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 Lese festlegen, muss die zugrunde liegende Datei oder der Datenstrom das Lesen unterstützen, aber nicht die Suche unterstützen. Wenn die zugrunde liegende Datei oder der Datenstrom die Suche unterstützt, werden die Dateien aus dem Archiv gelesen, da sie angefordert werden. Wenn die zugrunde liegende Datei oder der Datenstrom die Suche nicht unterstützt, wird das gesamte Archiv im Arbeitsspeicher gespeichert.

Wenn Sie den Modus auf "Erstellen" festlegen, muss die zugrunde liegende Datei oder der Datenstrom das Schreiben unterstützen, die Suche jedoch nicht unterstützen. 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 Datei geschrieben, sobald sie verfügbar ist. Wenn Sie mehrere Einträge erstellen, z. B. durch Aufrufen der CreateFromDirectory Methode, wird die Daten nach dem Erstellen aller Einträge in den zugrunde liegenden Stream oder die Datei geschrieben.

Wenn Sie den Modus auf "Aktualisieren" festlegen, muss die zugrunde liegende Datei oder der Datenstrom das Lesen, Schreiben und Suchen unterstützen. Der Inhalt des gesamten Archivs wird im Arbeitsspeicher gespeichert, und es werden keine Daten in die zugrunde liegende Datei oder den Datenstrom geschrieben, bis das Archiv entsorgt wird.

Die folgenden Methoden umfassen einen Parameter mit dem Namen" mode , mit dem Sie den Archivmodus angeben können:

Beispiele

Im folgenden Beispiel wird gezeigt, wie Sie beim Erstellen eines ZipArchive Objekts einen ZipArchiveMode Wert angeben.

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