ZipArchiveMode Wyliczenie
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Określa wartości interakcji z wpisami archiwum zip.
public enum class ZipArchiveMode
public enum ZipArchiveMode
type ZipArchiveMode =
Public Enum ZipArchiveMode
- Dziedziczenie
Pola
Create | 1 | Dozwolone jest tylko tworzenie nowych wpisów archiwum. |
Read | 0 | Dozwolone jest tylko odczytywanie wpisów archiwum. |
Update | 2 | Operacje odczytu i zapisu są dozwolone dla wpisów archiwum. |
Uwagi
Po ustawieniu trybu odczytu źródłowy plik lub strumień musi obsługiwać odczyt, ale nie musi obsługiwać wyszukiwania. Jeśli podstawowy plik lub strumień obsługuje wyszukiwanie, pliki są odczytywane z archiwum, gdy są żądane. Jeśli źródłowy plik lub strumień nie obsługuje wyszukiwania, całe archiwum jest przechowywane w pamięci.
Po ustawieniu trybu na Twórca źródłowy plik lub strumień musi obsługiwać zapisywanie, ale nie musi obsługiwać wyszukiwania. Każdy wpis w archiwum można otworzyć tylko raz na potrzeby zapisu. Jeśli tworzysz pojedynczy wpis, dane są zapisywane w bazowym strumieniu lub pliku, gdy tylko będą dostępne. W przypadku tworzenia wielu wpisów, takich jak wywołanie CreateFromDirectory metody, dane są zapisywane w bazowym strumieniu lub pliku po utworzeniu wszystkich wpisów.
Po ustawieniu trybu aktualizacji źródłowy plik lub strumień musi obsługiwać odczytywanie, zapisywanie i wyszukiwanie. Zawartość całego archiwum jest przechowywana w pamięci i żadne dane nie są zapisywane w bazowym pliku ani strumieniu do momentu usunięcia archiwum.
Następujące metody obejmują parametr o nazwie mode
, który umożliwia określenie trybu archiwum:
Przykłady
W poniższym przykładzie pokazano, jak określić ZipArchiveMode
wartość podczas tworzenia ZipArchive obiektu.
using System;
using System.IO;
using System.IO.Compression;
namespace ConsoleApplication
{
class Program
{
static void Main(string[] args)
{
using (FileStream zipToOpen = new FileStream(@"c:\users\exampleuser\release.zip", FileMode.Open))
{
using (ZipArchive archive = new ZipArchive(zipToOpen, ZipArchiveMode.Update))
{
ZipArchiveEntry readmeEntry = archive.CreateEntry("Readme.txt");
using (StreamWriter writer = new StreamWriter(readmeEntry.Open()))
{
writer.WriteLine("Information about this package.");
writer.WriteLine("========================");
}
}
}
}
}
}
Imports System.IO
Imports System.IO.Compression
Module Module1
Sub Main()
Using zipToOpen As FileStream = New FileStream("c:\users\exampleuser\release.zip", FileMode.Open)
Using archive As ZipArchive = New ZipArchive(zipToOpen, ZipArchiveMode.Update)
Dim readmeEntry As ZipArchiveEntry = archive.CreateEntry("Readme.txt")
Using writer As StreamWriter = New StreamWriter(readmeEntry.Open())
writer.WriteLine("Information about this package.")
writer.WriteLine("========================")
End Using
End Using
End Using
End Sub
End Module