Teilen über


ZipArchiveMode Enumeration

Definition

Gibt Werte für die Interaktion mit ZIP-Archiveinträgen an.

public enum class ZipArchiveMode
public enum ZipArchiveMode
type ZipArchiveMode = 
Public Enum ZipArchiveMode
Vererbung
ZipArchiveMode

Felder

Create 1

Nur das Erstellen neuer Archiveinträge ist zulässig.

Read 0

Nur das Lesen von Archiveinträgen ist zulässig.

Update 2

Lese- und Schreibvorgänge sind für die Archiveinträge zulässig.

Hinweise

Wenn Sie den Modus auf Lesen festlegen, muss die zugrunde liegende Datei oder der zugrunde liegende Stream das Lesen unterstützen, die Suche muss jedoch nicht unterstützt werden. Wenn die zugrunde liegende Datei oder der zugrunde liegende Stream die Suche unterstützt, werden die Dateien bei der Anforderung aus dem Archiv gelesen. Wenn die zugrunde liegende Datei oder der zugrunde liegende Stream die Suche nicht unterstützt, wird das gesamte Archiv im Arbeitsspeicher gespeichert.

Wenn Sie den Modus auf Create festlegen, muss die zugrunde liegende Datei oder der zugrunde liegende Stream das Schreiben unterstützen, muss jedoch keine Suchunterstützung haben. Jeder Eintrag im Archiv kann nur einmal zum Schreiben geöffnet werden. Wenn Sie einen einzelnen Eintrag erstellen, werden die Daten in den zugrunde liegenden Stream oder die zugrunde liegende Datei geschrieben, sobald sie verfügbar sind. Wenn Sie mehrere Einträge erstellen, z. B. durch Aufrufen der CreateFromDirectory -Methode, werden die Daten in den zugrunde liegenden Stream oder die zugrunde liegende Datei geschrieben, nachdem alle Einträge erstellt wurden.

Wenn Sie den Modus auf Aktualisieren festlegen, muss die zugrunde liegende Datei oder der zugrunde liegende Stream das Lesen, Schreiben und Suchen unterstützen. Der Inhalt des gesamten Archivs befindet sich im Arbeitsspeicher, und es werden keine Daten in die zugrunde liegende Datei oder den zugrunde liegenden Stream geschrieben, bis das Archiv gelöscht wurde.

Die folgenden Methoden enthalten einen Parameter namens mode , mit dem Sie den Archivmodus angeben können:

Beispiele

Das folgende Beispiel zeigt, wie beim Erstellen eines -Objekts ein ZipArchiveModeZipArchive Wert angegeben wird.

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

Gilt für: