Neu in .NET 7.0 [20]: Tar-Archive
Dass .NET 7.0 auch Tar-Archive verarbeiten kann, ist der Docker-Anbindung an die .NET CLI zu verdanken.
Seit .NET 7.0 unterstützt Microsoft auch das unter Unix-basierten Systemen beliebte Archivformat TAR (Tape Archiver, Bandarchivierer). Das Tar-Format wird oft auch als Tarball (Teerklumpen oder Teerkugel) bezeichnet.
Im Namensraum System.Formats.Tar
gibt es seit .NET 7.0 Klassen für das Archivformat TAR. Eingeführt hat Microsoft die TAR-Unterstützung, weil es für das Erstellen von Docker-Container mithilfe der .NET CLI erforderlich ist (siehe Teil 15 [1] und 16 dieser Serie [2]).
Mit der Methode CreateFromDirectory()
erstellt man ein TAR-Archiv aus einem Verzeichnis:
System.Formats.Tar.TarFile.CreateFromDirectory(@"T:\Dokumente",
@"t:\Dokumente.tar",
true);
Ziel kann eine Datei oder ein Stream sein.
Und mit ExtractToDirectory()
extrahiert man das Archiv wieder aus einer Datei oder einem Stream:
System.Formats.Tar.TarFile.ExtractToDirectory(@"t:\dokumente.tar",
true);
Ebenso gibt es im Namensraum System.Formats.Tar
weitere Klassen für das Hinzufügen von Dateien zu Archiven und das Entpacken einzelner Dateien wie TarReader
, TarWriter
und TarEntry
mit Ableitungen für die verschiedenen Unterformate: V7TarEntry
, PosixTarEntry
, GnuTarEntry
, PaxGlobalExtendedAttributesTarEntry
, PaxTarEntry
und UstarTarEntry
.
Ein TAR-Archiv ist im Standard allerdings nicht komprimiert, kann aber mit Komprimierungsverfahren wie GZip kombiniert werden. Mehr dazu gibt es im nächsten Teil der Serie.
(rme [3])
URL dieses Artikels:
https://www.heise.de/-9205929
Links in diesem Artikel:
[1] https://www.heise.de/blog/Neu-in-NET-7-0-15-Docker-Deployment-mit-NET-CLI-ohne-Dockerfile-9066836.html
[2] https://www.heise.de/blog/Neu-in-NET-7-0-16-Anpassen-des-Docker-Deployments-mit-NET-CLI-9071647.html
[3] mailto:rme@ix.de
Copyright © 2023 Heise Medien