
Einführung in ZIP-Archive
ZIP-Archive sind unerlässlich, um eine oder mehrere Dateien oder Ordner in einem einzigen Container zu komprimieren und zusammenzufassen. Dieses Format reduziert nicht nur die Dateigröße für die Speicherung und Übertragung, sondern behält auch Metadateninformationen bei, was die Verwaltung von Dateien erleichtert. ZIP-Archive werden sowohl in Desktop- als auch in Webanwendungen für Aufgaben wie Hochladen, Herunterladen, Teilen und Sichern von Dateien durch Verschlüsselung häufig verwendet.
In diesem Artikel werden wir verschiedene Methoden zum programmgesteuerten Erstellen von ZIP-Archiven in C# untersuchen. Sie werden lernen, wie man:
- Ein ZIP-Archiv mit C# erstellen
- Mehrere Dateien zu einem ZIP-Archiv hinzufügen
- Ordner zu einem ZIP-Archiv hinzufügen
- Ein passwortgeschütztes ZIP-Archiv mit ZipCrypto erstellen
- ZIP-Archiv mit AES-Verschlüsselung verschlüsseln
- Parallelkomprimierungsmodus festlegen
C# ZIP-Bibliothek
Aspose.ZIP für .NET ist eine robuste API, die zum Zippen und Entzippen von Dateien und Ordnern innerhalb von .NET-Anwendungen entwickelt wurde. Sie bietet Funktionen wie AES-Verschlüsselung, um Ihre Dateien innerhalb von ZIP-Archiven zu sichern. Sie können die API einfach von NuGet installieren oder die Binärdateien im Abschnitt Downloads herunterladen.
Erstellen eines ZIP-Archivs in C#
Um eine Datei in ein ZIP-Archiv zu komprimieren, befolgen Sie diese Schritte:
- Erstellen Sie ein FileStream-Objekt für das Ausgabe-ZIP-Archiv.
- Öffnen Sie die Quelldatei mit einem FileStream-Objekt.
- Instanziieren Sie die Archive-Klasse.
- Fügen Sie die Datei mit der Archive.CreateEntry(string, FileStream)-Methode zum Archiv hinzu.
- Speichern Sie das ZIP-Archiv mit der Archive.Save(FileStream)-Methode.
Hier ist ein Codebeispiel, das zeigt, wie man eine Datei zu einem ZIP-Archiv in C# hinzufügt:
Mehrere Dateien zu einem ZIP-Archiv in C# hinzufügen
Um mehrere Dateien zu einem ZIP-Archiv hinzuzufügen, können Sie eine der folgenden Methoden wählen:
Verwendung von FileStream
Verwenden Sie die FileStream-Klasse, um mehrere Dateien mit der Archive.CreateEntry(String, FileStream)-Methode zum ZIP-Archiv hinzuzufügen. So geht’s:
Verwendung von FileInfo
Alternativ können Sie die FileInfo-Klasse verwenden, um Dateien hinzuzufügen. Diese Methode lädt die Dateien mit der FileInfo-Klasse und fügt sie mit der Archive.CreateEntry(String, FileInfo)-Methode zum ZIP-Archiv hinzu. Siehe das folgende Beispiel:
Verwendung des Dateipfads
Sie können auch Dateien direkt hinzufügen, indem Sie deren Pfade an die Archive.CreateEntry(String name, String path, Boolean openImmediately, ArchiveEntrySettings newEntrySettings)-Methode übergeben. So geht’s:
Ordner zu einem ZIP-Archiv in C# hinzufügen
Das Hinzufügen eines Ordners zu einem ZIP-Archiv kann eine bequeme Möglichkeit sein, mehrere Dateien einzuschließen. Um einen Ordner in C# zu zippen, befolgen Sie diese Schritte:
- Erstellen Sie ein FileStream-Objekt für das Ausgabe-ZIP-Archiv.
- Instanziieren Sie die Archive-Klasse.
- Verwenden Sie die DirectoryInfo-Klasse, um den Ordner anzugeben, der gezippt werden soll.
- Fügen Sie den Ordner mit der Archive.CreateEntries(DirectoryInfo)-Methode zum ZIP hinzu.
- Speichern Sie das ZIP-Archiv mit der Archive.Save(FileStream)-Methode.
Hier ist ein Codebeispiel, das zeigt, wie man einen Ordner zu einem ZIP-Archiv in C# hinzufügt:
Erstellen eines passwortgeschützten ZIP mit ZipCrypto in C#
Um die Sicherheit zu erhöhen, können Sie passwortgeschützte ZIP-Archive mit ZipCrypto-Verschlüsselung erstellen. Dies wird erreicht, indem Sie die ArchiveEntrySettings-Klasse im Konstruktor der Archive verwenden, die es Ihnen ermöglicht, den Verschlüsselungstyp anzugeben.
Hier ist ein Beispiel, wie man ein passwortgeschütztes ZIP-Archiv mit ZipCrypto in C# erstellt:
Passwortgeschütztes ZIP mit AES-Verschlüsselung erstellen
Die Aspose.ZIP für .NET-Bibliothek unterstützt auch AES-Verschlüsselung zum Sichern von ZIP-Archiven. Sie können aus den folgenden AES-Verschlüsselungsmethoden wählen:
- AES128
- AES192
- AES256
Um AES-Verschlüsselung anzuwenden, verwenden Sie die AesEcryptionSettings-Klasse. So erstellen Sie ein passwortgeschütztes ZIP mit AES-Verschlüsselung in C#:
Parallelkomprimierungsmodus festlegen
Für Fälle mit mehreren Einträgen können Sie die API für die Parallelkomprimierung mit der ParallelOptions-Klasse konfigurieren. Aspose.ZIP für .NET bietet mehrere Parallelkomprimierungsmodi:
- Nie - Nicht parallel komprimieren.
- Immer - Immer parallel komprimieren (Achten Sie auf Out-of-Memory-Probleme).
- Auto - Automatisch entscheiden, ob die Parallelkomprimierung basierend auf den Einträgen verwendet werden soll.
Hier ist ein Beispiel, das zeigt, wie man den Parallelkomprimierungsmodus beim Zippen mehrerer Dateien festlegt:
Weitere Informationen zur C# .NET ZIP-Bibliothek
Vertiefen Sie sich in unsere C# ZIP-API mit den folgenden Ressourcen:
ZIP-Archive online ausprobieren
Erforschen Sie unsere kostenlose Online-Anwendung, die auf Aspose.ZIP für .NET basiert, um Dateien einfach in ZIP-Archive zu komprimieren.
Fazit
In diesem Artikel haben Sie gelernt, wie man programmgesteuert ZIP-Archive in C# erstellt. Die bereitgestellten Codebeispiele zeigen, wie man Dateien und Ordner zu ZIP-Archiven hinzufügt. Darüber hinaus haben wir behandelt, wie man passwortgeschützte ZIP-Archive mit ZipCrypto- und AES-Verschlüsselungsmethoden erstellt. Wir haben auch die Parallelkomprimierung für die effiziente Handhabung großer Dateien besprochen. Wenn Sie Fragen haben oder weitere Unterstützung benötigen, können Sie sich gerne über unser Forum an uns wenden.