Open-Source-.NET-API für Komprimierungsdateiformate
Open-Source-.NET-Bibliothek zum Arbeiten mit gängigen Komprimierungsdateiformaten.
Was ist SharpCompress?
SharpCompress ist eine reine Open-Source-.NET-Bibliothek, die es Softwareentwicklern ermöglicht, mit gängigen Komprimierungsdateiformaten wie RAR, 7ZAP, ZIP, TAR, GZIP, BZIP2 und mehr zu arbeiten. Es bietet die Möglichkeit zum Dekomprimieren von 7ZIP, ZIP/unzip, TAR/untar LZIP/unlzip, BZIP2/unbzip2 und GZIP/ungzip mit Vorwärts-Lese- und Datei-Direktzugriffs-APIs. Es hat auch Schreibunterstützung für die Dateiformate ZIP, TAR, BZIP2 und GZIP implementiert.
SharpCompress Mehrere wichtige Funktionen wie das Erstellen eines Zip-Archivs aus allen Dateien in einem Verzeichnis in eine Datei, das Extrahieren aller Dateien aus einer RAR-Datei in ein Verzeichnis, die Verwendung von ReaderFactory zur automatischen Erkennung des Archivtyps und das Öffnen des Eingangsstroms, die Verwendung von ReaderFactory zur automatischen Erkennung des Archivtyps und Öffnen Sie den Eintragsstream und vieles mehr
Erste Schritte mit SharpCompress
Um SharpCompress zu installieren, benötigen Sie .NET Framework 3.5 oder höher. Sie können das Repository manuell von GitHub herunterladen. Oder Sie können NuGet verwenden.
Hier ist der Befehl
Install-Package sharpcompress -Version number
.NET-Bibliothek zum Komprimieren und Extrahieren von Dateien aus einer ZIP-Datei
SharpCompress ermöglicht .NET-Entwicklern, eine ZIP-Datei zu erstellen, indem der Inhalt eines Ordners in eine neue ZIP-Datei komprimiert wird. Das ZIP-Dateiformat ist eines der am häufigsten verwendeten Komprimierungs- und Archivierungsdateiformate. Es hilft, die Größe einer oder mehrerer Dateien zu reduzieren, und Sie können auch mehrere Dateien und Ordner in einer einzigen Datei archivieren. Die API ermöglicht es Entwicklern auch, Dateien aus einer ZIP-Datei zu extrahieren. Sie müssen nur darauf hinweisen, welche Datei Sie extrahieren möchten, und es wird jede Datei im Archiv durchlaufen, um sie in einem Verzeichnis zu speichern
Alle Dateien aus RAR extrahieren - C#
// Read RAR file
RarArchive rarArchive = RarArchive.Open("fileformat.rar");
// Extract all data
foreach (var entry in rarArchive.Entries.Where(entry => !entry.IsDirectory))
{
entry.WriteToDirectory("\\filformat", new ExtractionOptions()
{
ExtractFullPath = true,
Overwrite = true
});
}
Hinzufügen einer Datei zu einer vorhandenen ZIP-Datei mit .NET
Die SharpCompress Library bietet Benutzern die Möglichkeit, Dateien zu einer vorhandenen ZIP-Datei hinzuzufügen. Zuerst müssen Sie die Datei auswählen, die Sie an eine vorhandene ZIP-Datei anhängen möchten. SharpCompress speichert es zuerst in einer temporären Datei und sobald Sie fertig sind, können Sie die temporäre Datei an den permanenten Speicherort verschieben. Auf diese Weise wird die neue Datei komprimiert, wenn Sie sie der vorhandenen ZIP-Datei hinzufügen. Sie können eine vorhandene Datei in drei einfachen Schritten zu einem Zip-Archiv hinzufügen
Datei zu bestehender ZIP-Datei hinzufügen
- Öffnen Sie eine vorhandene ZIP-Datei mit der Methode ZipArchive.Open() und übergeben Sie den Dateinamen als Parameter
- Fügen Sie Dateien in ZIP mit der Methode AddAllFromDirectory() hinzu und übergeben Sie den Verzeichnispfad als Anhänge
- Speichern Sie die Datei mit der Methode SaveTo() und übergeben Sie den Ausgabepfad als erstes Argument und CompressionType als zweites Argument
Dateien zu vorhandenem ZIP-Archiv hinzufügen – C#
// open existing ZIP file
ZipArchive archive = ZipArchive.Open("test.zip");
// add samples files in it
archive.AddAllFromDirectory("\\sample");
// save file
archive.SaveTo("sample.zip", CompressionType.Deflate);