Zum Fußzeileninhalt springen
NUTZUNG VON IRONZIP

Wie man eine Datei in ein Verzeichnis in C# entpackt

Das Entpacken von Dateien programmgesteuert ist eine gängige Aufgabe in der Softwareentwicklung, insbesondere beim Umgang mit komprimierten Archiven. In this article, we’ll explore how to extract files from ZIP archives in C# using the IronZIP library.

Egal, ob Sie an einer Windows-Anwendung oder einem .NET-Projekt arbeiten, das Verständnis des Entpackvorgangs von Dateien kann von unschätzbarem Wert sein. Lassen Sie uns eintauchen und lernen, wie man ZIP-Dateien effizient innerhalb Ihrer C#-Codebasis handhabt.

Was dieser Artikel erklären wird:

  1. Der Installationsprozess der IronZIP-Bibliothek
  2. Wie man ein ZIP-Archiv extrahiert
  3. Wie man ein passwortgeschütztes ZIP-Archiv extrahiert
  4. Wie man eine ZIP-Datei erstellt
  5. Wie man passwortgeschützte ZIP-Dateien erstellt

Warum sollten Sie Dateien entpacken?

ZIP-Dateien, auch bekannt als ZIP-Archive, sind Bündel mehrerer Dateien in einem einzigen komprimierten Container. Das Entpacken dieser Dateien beinhaltet das Extrahieren der komprimierten Daten und das Wiederherstellen in den Originalzustand. Dieser Prozess ist unerlässlich, wenn Sie auf Daten innerhalb einer C#-Anwendung zugreifen oder diese bearbeiten müssen. IronZIP rationalisiert diese Aufgabe, indem es einfache Methoden für die Verwaltung komprimierter Daten bereitstellt.

Was ist IronZIP?

IronZIP is a powerful C# ZIP archive library that facilitates creating, reading, and Extrahieren von Archiven in .NET-Anwendungen erleichtert. Egal, ob Sie Dateien komprimieren, Daten aus bestehenden Archiven extrahieren oder Ihre ZIP-Dateien verwalten müssen, IronZIP bietet eine benutzerfreundliche API, um diese Aufgaben effizient zu erledigen. IronZIP vereinfacht die Arbeit mit ZIP-Archiven in Ihren .NET-Anwendungen.

Es unterstützt verschiedene Archivformate, einschließlich ZIP, TAR, GZIP und BZIP2. IronZIP ist plattformübergreifend, kompatibel mit .NET Core, .NET Standard und .NET Framework. Und es bietet erweiterte Funktionen wie passwortgeschützte Archive, anpassbare Komprimierungsstufen und Dateieintragsverwaltung.

Wie man Dateien in ein Verzeichnis in C# extrahiert

Nun werde ich einige Beispiele zum Extrahieren aus ZIP-Dateien in C# besprechen. Starten Sie, indem Sie ein neues C#-Projekt in Visual Studio erstellen. Wählen Sie den geeigneten Projekttyp aus (z. B. Konsolenanwendung, Windows Forms, ASP.NET Core, usw.). Als nächstes müssen wir das IronZIP NuGet-Paket installieren.

IronZIP über den NuGet-Paketmanager installieren

Um das IronZIP NuGet-Paket zu installieren, können Sie den folgenden Befehl in der Paketmanager-Konsole verwenden:

Install-Package IronZip

Alternativ können Sie die Paketmanager-Oberfläche in Visual Studio verwenden, um das IronZIP-Paket zu suchen und zu installieren.

Importieren Sie in Ihrem C#-Code den IronZIP-Namespace, um auf dessen Klassen und Methoden zuzugreifen.

using IronZip;
using IronZip;
Imports IronZip
$vbLabelText   $csharpLabel

Code Beispiel zum Extrahieren von ZIP-Dateien in C#

Der folgende Code entpackt Dateien in das angegebene Verzeichnis in C#.

// This line extracts the "Images.zip" archive to the "Extracted Images" directory
IronZipArchive.ExtractArchiveToDirectory(@"E:\Images.zip", "Extracted Images");
// This line extracts the "Images.zip" archive to the "Extracted Images" directory
IronZipArchive.ExtractArchiveToDirectory(@"E:\Images.zip", "Extracted Images");
' This line extracts the "Images.zip" archive to the "Extracted Images" directory
IronZipArchive.ExtractArchiveToDirectory("E:\Images.zip", "Extracted Images")
$vbLabelText   $csharpLabel

Der obige Code liest die angegebene ZIP-Datei ("E:\Images.zip"), dekomprimiert deren Inhalt und legt die extrahierten Dateien in das Verzeichnis mit dem Namen "Extracted Images".

Erklärung

IronZipArchive bezieht sich auf die Klasse, die von der IronZIP-Bibliothek bereitgestellt wird. Es ist der Haupteinstiegspunkt für die Arbeit mit ZIP-Archiven in Ihrem C#-Code. ExtractArchiveToDirectory(...) ist eine Methode (oder Funktion), die die Klasse IronZipArchive bereitstellt. Es ermöglicht Ihnen, den Inhalt eines ZIP-Archivs (in diesem Fall die Datei "E:\Images.zip") in ein angegebenes Verzeichnis (in diesem Fall das Verzeichnis mit dem Namen "Extracted Images") zu extrahieren.

Die Methode nimmt zwei Parameter:

  1. Der erste Parameter (@"E:\Images.zip") ist der Pfad zur ZIP-Datei, die Sie extrahieren möchten.
  2. Der zweite Parameter ("Extracted Images") ist das Verzeichnis, in das Sie die Dateien aus dem ZIP-Archiv extrahieren möchten.

Ausgabe:

Wie man Dateien in ein Verzeichnis in C# entpackt: Abbildung 1 - Extrahierte Dateien im Verzeichnis 'Extracted Images'

Wie man eine passwortgeschützte ZIP-Datei extrahiert

IronZIP bietet eine einfache Methode zum Extrahieren von verschlüsselten ZIP-Dateien. Der folgende Code zeigt, wie man alle Dateien aus einer passwortgeschützten ZIP-Datei extrahiert.

// This line extracts the "EncryptedImages.zip" archive to the "ExtractedImages" directory with the given password
IronZipArchive.ExtractArchiveToDirectory(@"EncryptedImages.zip", "ExtractedImages", "zipP@55w0rd");
// This line extracts the "EncryptedImages.zip" archive to the "ExtractedImages" directory with the given password
IronZipArchive.ExtractArchiveToDirectory(@"EncryptedImages.zip", "ExtractedImages", "zipP@55w0rd");
' This line extracts the "EncryptedImages.zip" archive to the "ExtractedImages" directory with the given password
IronZipArchive.ExtractArchiveToDirectory("EncryptedImages.zip", "ExtractedImages", "zipP@55w0rd")
$vbLabelText   $csharpLabel

Der obige Code extrahiert den Inhalt des Archivs "EncryptedImages.zip" in das Verzeichnis "ExtractedImages" unter Verwendung von IronZIP. Es wird auch das Passwort "zipP@55w0rd" zur Entschlüsselung spezifiziert, was darauf hinweist, dass die ZIP-Datei verschlüsselt ist und das angegebene Passwort für die Extraktion benötigt. Es werden vorhandene Dateien überschrieben.

Ausgabe:

Wie man Dateien in ein Verzeichnis in C# entpackt: Abbildung 2 - Extrahierte passwortgeschützte Dateien im Verzeichnis 'Extracted Images'

In C# mit IronZIP bedeutet das Entpacken einer Datei in ein Verzeichnis, die Fähigkeiten der IronZIP-Bibliothek in vollem Umfang zu nutzen. Durch die Verwendung von Funktionen wie IronZipArchive.ExtractArchiveToDirectory können Entwickler komprimierte Dateien leicht extrahieren, was einen unkomplizierten Mechanismus für die Handhabung des lokalen Datei-Headers bietet. Es bietet einen effizienten Weg, um ZIP-Dateien und RAR-Dateien in ihren Anwendungen zu aktualisieren.

IronZIP bietet auch Methoden, um ZIP-Dateien in C# und .NET-Anwendungen zu erstellen. Lassen Sie uns ein ZIP-Archiv in C# erstellen.

Wie man ein ZIP-Archiv erstellt

Das folgende Codebeispiel wird ein ZIP-Archiv erstellen.

static void Main(string[] args)
{
    // Create a new ZIP archive with a high compression level (9)
    using (var archive = new IronZipArchive(9))
    {
        // Add image files to the archive
        archive.Add(@"E:\Images\image1.png");
        archive.Add(@"E:\Images\image2.png");
        archive.Add(@"E:\Images\image3.png");
        archive.Add(@"E:\Images\image4.png");

        // Export the ZIP archive to the file "MyImages.zip"
        archive.SaveAs("MyImages.zip");
    }
}
static void Main(string[] args)
{
    // Create a new ZIP archive with a high compression level (9)
    using (var archive = new IronZipArchive(9))
    {
        // Add image files to the archive
        archive.Add(@"E:\Images\image1.png");
        archive.Add(@"E:\Images\image2.png");
        archive.Add(@"E:\Images\image3.png");
        archive.Add(@"E:\Images\image4.png");

        // Export the ZIP archive to the file "MyImages.zip"
        archive.SaveAs("MyImages.zip");
    }
}
Shared Sub Main(ByVal args() As String)
	' Create a new ZIP archive with a high compression level (9)
	Using archive = New IronZipArchive(9)
		' Add image files to the archive
		archive.Add("E:\Images\image1.png")
		archive.Add("E:\Images\image2.png")
		archive.Add("E:\Images\image3.png")
		archive.Add("E:\Images\image4.png")

		' Export the ZIP archive to the file "MyImages.zip"
		archive.SaveAs("MyImages.zip")
	End Using
End Sub
$vbLabelText   $csharpLabel

Der obige Code zeigt die Verwendung von IronZIP zur Erstellung eines neuen ZIP-Archivs (mit Kompressionsstufe 9) und das Hinzufügen mehrerer Einträge, die jeweils eine Bilddatei (image1.png, image2.png, image3.png und image4.png) von den angegebenen Dateipfaden repräsentieren.

Schließlich wird die SaveAs-Methode verwendet, um das erstellte ZIP-Archiv als "MyImages.zip" im angegebenen Verzeichnis zu exportieren. Die Kompressionsstufe 9 zeigt maximale Kompression an, was zu kleineren Dateigrößen, aber möglicherweise längeren Verarbeitungszeiten führt.

Wie man Dateien in ein Verzeichnis in C# entpackt: Abbildung 3 - Das ausgegebene ZIP-Archiv aus dem vorherigen Code

Wie man ein passwortgeschütztes ZIP-Archiv erstellt

Der folgende Code wird eine passwortgeschützte ZIP-Datei erstellen.

// Create a new ZIP archive with a high compression level (9)
using (var archive = new IronZipArchive(9))
{
    // Password protect the ZIP archive (Support AES128 & AES256)
    archive.Encrypt("miPassw0rd", EncryptionMethods.AES256);

    // Add image files to the archive
    archive.Add(@"E:\Images\image1.png");
    archive.Add(@"E:\Images\image2.png");

    // Export the ZIP archive as "PasswordProtectedImages.zip"
    archive.SaveAs("PasswordProtectedImages.zip");
}
// Create a new ZIP archive with a high compression level (9)
using (var archive = new IronZipArchive(9))
{
    // Password protect the ZIP archive (Support AES128 & AES256)
    archive.Encrypt("miPassw0rd", EncryptionMethods.AES256);

    // Add image files to the archive
    archive.Add(@"E:\Images\image1.png");
    archive.Add(@"E:\Images\image2.png");

    // Export the ZIP archive as "PasswordProtectedImages.zip"
    archive.SaveAs("PasswordProtectedImages.zip");
}
' Create a new ZIP archive with a high compression level (9)
Using archive = New IronZipArchive(9)
	' Password protect the ZIP archive (Support AES128 & AES256)
	archive.Encrypt("miPassw0rd", EncryptionMethods.AES256)

	' Add image files to the archive
	archive.Add("E:\Images\image1.png")
	archive.Add("E:\Images\image2.png")

	' Export the ZIP archive as "PasswordProtectedImages.zip"
	archive.SaveAs("PasswordProtectedImages.zip")
End Using
$vbLabelText   $csharpLabel

Der obige Code zeigt die Verwendung von IronZIP zur Erstellung eines passwortgeschützten ZIP-Archivs mit einer angegebenen Verschlüsselungsmethode (in diesem Fall AES256). Das Passwort "miPassw0rd" wird festgelegt, um die ZIP-Datei zu sichern. Der Code fügt dann zwei Bilddateien (image1.png und image2.png) von den angegebenen Dateipfaden zum Archiv hinzu.

Schließlich wird die SaveAs-Methode verwendet, um das passwortgeschützte ZIP-Archiv als "PasswordProtectedImages.zip" zu exportieren. Dies gewährleistet die Sicherheit des Inhalts mit dem angegebenen Passwort und der Verschlüsselungsmethode. IronZIP unterstützt AES128, AES256 und traditionelle Methoden.

Abschluss

Zusammenfassend hat dieser Artikel die wesentlichen Aspekte der programmgesteuerten Handhabung von komprimierten Dateien in C# mithilfe der IronZIP-Bibliothek behandelt. From the installation process to practical examples of extracting, creating, and securing ZIP archives, developers have been provided with valuable insights. IronZIPs benutzerfreundliche API, plattformübergreifende Kompatibilität und Unterstützung für Verschlüsselungsmethoden machen es zu einer vielseitigen Lösung für die effiziente Verwaltung von ZIP-Dateien in verschiedenen C#-Anwendungen.

Egal, ob Sie bestehende Dateien aktualisieren oder mit passwortgeschützten Archiven arbeiten, IronZIP optimiert den Prozess und bietet ein robustes Werkzeugsatz für Entwickler, die in ihren C#-Projekten nach effektiven Dateimanipulationsmöglichkeiten suchen.

IronZIP bietet flexible Lizenzierungsoptionen, einschließlich einer kostenlosen Testversion für den Langzeitgebrauch. Entwickler können das Lizenzmodell wählen, das am besten zu ihren Projektanforderungen passt, und sowohl Vielseitigkeit als auch Komfort bei der Implementierung von IronZIP in ihren C#-Anwendungen sicherstellen.

Häufig gestellte Fragen

Wie kann ich Dateien aus einem ZIP-Archiv in C# extrahieren?

Sie können IronZIP verwenden, um Dateien aus einem ZIP-Archiv in C# zu extrahieren. Die Methode IronZipArchive.ExtractArchiveToDirectory ermöglicht es Ihnen, den Pfad der ZIP-Datei und das Zielverzeichnis für die Extraktion anzugeben.

Welche Schritte sind notwendig, um IronZIP in einem .NET-Projekt zu installieren?

Um IronZIP in einem .NET-Projekt zu installieren, können Sie den NuGet-Paket-Manager in Visual Studio verwenden. Führen Sie den Befehl Install-Package IronZIP in der Paket-Manager-Konsole aus oder suchen Sie in der NuGet-Paket-Manager-UI nach IronZIP, um es Ihrem Projekt hinzuzufügen.

Kann ich kennwortgeschützte ZIP-Dateien mit IronZIP extrahieren?

Ja, IronZIP unterstützt das Extrahieren kennwortgeschützter ZIP-Dateien. Sie müssen das Passwort als Parameter in der Methode ExtractArchiveToDirectory angeben, um auf die Dateien zugreifen und diese extrahieren zu können.

Wie erstelle ich programmgesteuert eine ZIP-Datei in C#?

Sie können eine ZIP-Datei in C# mit IronZIP erstellen, indem Sie eine neue Instanz von IronZipArchive erstellen, Dateien mit der Methode Add hinzufügen und das Archiv mit der Methode SaveAs speichern.

Unterstützt IronZIP mehrere Archivformate?

Ja, IronZIP unterstützt mehrere Archivformate, einschließlich ZIP, TAR, GZIP und BZIP2, was eine flexible Handhabung verschiedener komprimierter Dateitypen in C#-Anwendungen ermöglicht.

Ist IronZIP mit plattformübergreifenden .NET-Anwendungen kompatibel?

IronZIP ist mit plattformübergreifenden .NET-Anwendungen kompatibel, da es .NET Core, .NET Standard und .NET Framework unterstützt und somit vielseitig für verschiedene Entwicklungsumgebungen einsetzbar ist.

Welche Verschlüsselungsmethoden sind in IronZIP verfügbar?

IronZIP bietet Verschlüsselungsmethoden für die Erstellung von kennwortgeschützten ZIP-Archiven. Sie können die Encrypt-Methode verwenden, um ein Passwort festzulegen und Ihre Archive zu sichern.

Wie kann ich IronZIP vor dem Kauf bewerten?

IronZIP bietet eine kostenlose Testversion mit flexiblen Lizenzoptionen, die es Entwicklern ermöglicht, die Funktionen und die Leistung der Bibliothek zu bewerten, bevor sie sich für einen Kauf entscheiden.

Welche Vorteile bietet IronZIP bei der Handhabung von ZIP-Dateien in C#?

IronZIP bietet eine benutzerfreundliche API, unterstützt verschiedene Archivformate und Verschlüsselungsmethoden und vereinfacht den Prozess des Erstellens, Lesens und Extrahierens von ZIP-Archiven, was es zu einem effizienten Werkzeug für C#-Entwickler macht.

Curtis Chau
Technischer Autor

Curtis Chau hat einen Bachelor-Abschluss in Informatik von der Carleton University und ist spezialisiert auf Frontend-Entwicklung mit Expertise in Node.js, TypeScript, JavaScript und React. Leidenschaftlich widmet er sich der Erstellung intuitiver und ästhetisch ansprechender Benutzerschnittstellen und arbeitet gerne mit modernen Frameworks sowie der Erstellung gut strukturierter, optisch ansprechender ...

Weiterlesen