Die Klasse System.IO.Compression, die es seit dem klassischen .NET Framework 4.5 und im modernen .NET seit Version .NET Core 1.0 gibt, erhält die zwei neuen statischen Methoden CreateFromDirectory() und ExtractToDirectory() (Listing 1).
Die Methode CreateFromDirectory() erstellt ein neues ZIP-Archiv, das alle Dateien und Unterverzeichnisse eines angegebenen Ausgangsverzeichnisses enthält. Sie können es verwenden, um schnell und einfach ein ZIP-Archiv aus den Inhalten eines Verzeichnisses zu erstellen, sei es zum Komprimieren von Dateien für die Übertragung, zum Speichern von Backups oder für andere Zwecke. Die Methode bietet verschiedene Überladungen mit diesen Parametern:
sourceDirectoryName (string): Der Pfad zum Ausgangsverzeichnis, das in das ZIP-Archiv komprimiert werden soll; dieses Verzeichnis und seine gesamte Struktur werden im ZIP-Archiv gespeichert.
destinationArchiveFileName (string): Der Pfad und der Dateiname des ZIP-Archivs, das erstellt werden soll; das ZIP-Archiv wird an diesem Speicherort erstellt und enthält den Inhalt des Ausgangsverzeichnisses.
compressionLevel (CompressionLevel) (optional): Das Kompressionsniveau, das angibt, wie stark die Dateien im ZIP-Archiv komprimiert werden sollen; die verfügbaren Optionen sind CompressionLevel.NoCompression, CompressionLevel.Fastest, CompressionLevel.Optimal und CompressionLevel.SmallestSize.
includeBaseDirectory (bool) (optional): Ein boolescher Wert, der angibt, ob das Basisverzeichnis des Quellverzeichnisses im ZIP-Archiv enthalten sein soll; wenn true, wird das Basisverzeichnis als oberstes Verzeichnis im ZIP-Archiv erstellt. Wenn false, werden nur die Dateien und Unterverzeichnisse des Quellverzeichnisses direkt im ZIP-Archiv enthalten sein, ohne ein übergeordnetes Verzeichnis.
entryNameEncoding (Typ Encoding): Die Zeichenkodierung, die zum Codieren der Namen der Einträge im ZIP-Archiv verwendet wird; standardmäßig wird die UTF-8-Kodierung verwendet.
Die Methode ExtractToDirectory() extrahiert alle Dateien und Unterverzeichnisse aus einem angegebenen ZIP-Archiv in ein Zielverzeichnis. Sie ist das Gegenstück zu CreateFromDirectory() und wird verwendet, um den Inhalt eines ZIP-Archivs zu entpacken. Sie können das beispielsweise verwenden, um Dateien heruntergeladener ZIP-Dateien zu entpacken oder um Dateien wiederherzustellen, die aus einem Backuparchiv extrahiert wurden. Auch diese Methode bietet verschiedene Überladungen, die unterschiedliche...