Zum Fußzeileninhalt springen
NUTZUNG VON IRONZIP

Wie man Dateien in .NET Core entpackt

1. Einleitung

"Unzip" beschreibt den Vorgang, Dateien und Ordner aus einem ZIP-Archiv zu entnehmen und zu dekomprimieren. "Unzip" refers to the process of recovering compressed files or directories back to their original condition, so that they can be accessed and used again after being compressed into a ZIP file. Wir können verschiedene Arten von Dateien in ZIP-Dateien einfügen, wie Bilder, TXT-Dateien usw.

Benutzer können den Inhalt eines ZIP-Archivs durch Entpacken wiederherstellen, was der Prozess der Umkehrung der Komprimierung ist. Der Zugriff auf einzelne Dateien oder Ordner, die zusammengepackt wurden, um sie effektiver zu übertragen, zu speichern oder zu teilen, ist eine beliebte Verwendung dafür. Nach Abschluss des "unzip"-Verfahrens haben die Dateien ihre ursprüngliche Struktur und können vom Benutzer nach Bedarf gelesen, geändert oder verwendet werden. In diesem Artikel werden wir Dateien in Asp.net core mit der IronZIP-Archivbibliothek entpacken.

2. In Asp.net Core, Zusammenfassung des Entpackens von Dateien

  1. Erstellen Sie ein neues Asp.net Core-Projekt.
  2. Installieren Sie die IronZIP-Bibliothek in das erstellte Projekt.
  3. Um eine Datei zu entpacken, instanziieren Sie die IronArchive-Klasse.
  4. Die ZIP-Datei kann mit der Funktion ExtractArchiveToDirectory extrahiert werden.
  5. Geben Sie die Zieldatei an, in die die entpackte Datei extrahiert werden soll.

3. IronZIP-Bibliothek

Iron Software hat die .NET-Bibliothek IronZIP erstellt, die den Umgang mit ZIP-Dateien in .NET-Anwendungen erleichtert. Sie bietet Programmierern Werkzeuge und Funktionen, um in verschiedenen Weisen mit ZIP zu interagieren. Diese umfassen das Erzeugen, Extrahieren, Komprimieren, Dekomprimieren, Verschlüsseln und Ändern von Dateien und Verzeichnissen innerhalb der ZIP-Dateien.

3.1 Funktionen von IronZIP

  • Erstellung von ZIP-Dateien: Die Möglichkeit für .NET-Anwendungen, brandneue ZIP-Archive von Grund auf zu erstellen.
  • Extraktion und Dekomprimierung: Die Fähigkeit, Dateien und Verzeichnisse aus bestehenden ZIP-Paketen zu entfernen und Inhalte zu entpacken.
  • Kompression: Bietet Werkzeuge für das Schrumpfen von Dateien und Ordnern in ZIP-Archive, um sie kleiner für den Transport oder die Speicherung zu machen.
  • Passwortschutz und Verschlüsselung: Um die Inhalte von ZIP-Archiven zu schützen, bietet diese Funktion die Möglichkeit, Passwortschutz zu aktivieren und ZIP-Dateien zu verschlüsseln.
  • Dateimanipulation: Dies ermöglicht es Programmierern, Dateien und Verzeichnisse in ZIP-Paketen hinzuzufügen, zu entfernen, zu aktualisieren oder anderweitig zu bearbeiten.
  • Kompatibilität: Entwickelt, um in verschiedenen .NET-Umgebungen zu funktionieren, kompatibel mit mehreren Versionen des Frameworks.
  • Leistungsoptimierung: Gezielte Maximierung der Geschwindigkeit, sodass .NET-Programme große ZIP-Dateien oder Datensätze effizienter verwalten können.

Bei der Verwaltung von ZIP-Dateien für ihre Anwendungen könnten Entwickler IronZIP als nützliches Werkzeug finden. Innerhalb des .NET-Frameworks bietet es eine Vielzahl von Funktionen zum Arbeiten mit ZIP-Archiven programmgesteuert an und bietet Einfachheit und Vielseitigkeit.

Für die aktuellsten Details zu Funktionen, Fähigkeiten, Kompatibilität und neuer Funktionalität in späteren Versionen, konsultieren Sie die offizielle Dokumentation, die Versionshinweise oder die IronZIP-Website, da Softwarebibliotheken im Laufe der Zeit aktualisiert und verbessert werden. Weitere Informationen erhalten Sie, indem Sie hier klicken.

3.2 Erstellen eines neuen Projekts in Visual Studio

Wählen Sie die Dateioption, nachdem Sie das Visual Studio-Programm gestartet haben. Wählen Sie "neues Projekt" und dann "Asp.Net Core-Webanwendung."

Geben Sie im entsprechenden Textfeld den Projektnamen ein und wählen Sie den Speicherort der Datei. Klicken Sie anschließend auf die Schaltfläche Erstellen und wählen Sie die erforderliche .NET-Framework-Version.

Die Struktur der gewählten Anwendung wird jetzt vom Visual Studio-Projekt generiert. In diesem Fall wird ASP.NET MVC verwendet. Daher haben wir zwei Optionen: entweder den vorhandenen Controller verwenden, der es Ihnen ermöglicht, den Code hinzuzufügen und die Anwendung zu erstellen/auszuführen, oder einen neuen zu erstellen.

Die Bibliothek kann dann hinzugefügt und der Code getestet werden.

4. IronZIP-Paket-Download

4.1 Verwenden von Visual Studio

Sie können Pakete direkt in Ihre Lösung mit der NuGet-Paket-Manager-Funktion von Visual Studio installieren. Sie können das untenstehende Snippet verwenden, um auf den NuGet-Paket-Manager zuzugreifen.

Wie man Dateien in .NET Core entpackt: Abbildung 1 - Wie man auf den NuGet-Paket-Manager zugreift

Es bietet ein Suchfeld, das eine Liste der NuGet-Website-Pakete anzeigt. Der untenstehende Screenshot zeigt uns, wo wir nach dem Begriff "IronZIP" im Paketmanager suchen können.

Wie man Dateien in .NET Core entpackt: Abbildung 2 - Suche nach IronZIP im NuGet-Paket-Manager

Im obigen Bild wird eine Liste relevanter Suchbegriffe angezeigt. Es ist erforderlich, die erforderliche Option auszuwählen, um das Lösungspaket zu installieren.

4.2 Verwenden der Visual Studio Befehlszeile

Wählen Sie in Visual Studio Extras > NuGet-Paket-Manager, um die Paket-Manager-Konsole anzuzeigen.

Geben Sie die folgende Zeile im Terminal-Reiter des Paketmanagers ein:

Install-Package IronZip

Nach dem Herunterladen und Installieren in das aktive Projekt ist das Paket einsatzbereit.

4.3 Direkt auf der NuGet-Website herunterladen

Mit der dritten Methode kann man das NuGet-Paket direkt von der Website erhalten.

Navigieren Sie dort und öffnen Sie den Link.

Wählen Sie die Download-Paket-Option aus dem Menü auf der rechten Seite.

Doppelklicken Sie auf das Paket, nachdem es heruntergeladen wurde. Es wird sich eigenständig installieren.

Laden Sie die Lösung erneut und nutzen Sie sie im Projekt.

4.4 Direkt von der IronZIP-Website herunterladen

Klicken Sie auf diesen Link, um das neueste Paket direkt von der Website herunterzuladen. Sobald es heruntergeladen ist, folgen Sie den folgenden Schritten, um das Paket dem Projekt hinzuzufügen.

  • Wählen Sie das Projekt mit einem Rechtsklick im Lösungsfenster.
  • Wählen Sie die Referenz und navigieren Sie zu ihrem Speicherort, nachdem sie heruntergeladen wurde.
  • Klicken Sie anschließend auf OK, um die Referenz hinzuzufügen.

4.5 Entpacken von Dateien in Asp.net core

Sie müssen den Dateinamen und das Ziel angeben, wo Sie die Datei mit IronZIP in C# aus einem ZIP-Archiv extrahieren möchten.

Beispielcode hier:

using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.RazorPages;
using IronZip;

namespace IronPDF_WebApp.Pages
{
    public class IndexModel : PageModel
    {
        private readonly ILogger<IndexModel> _logger;

        public IndexModel(ILogger<IndexModel> logger)
        {
            _logger = logger;
        }

        public IActionResult OnPost()
        {
            try
            {
                // Retrieve the uploaded file from the form
                var file = Request.Form.Files[0];

                // Set the file path where the file will be saved
                string filepath = @"C:\temp\uploads\";

                // Save the uploaded file to the specified filepath
                using (var stream = new FileStream(filepath + file.FileName, FileMode.Create))
                {
                    file.CopyToAsync(stream);
                }

                // Extract the ZIP archive to the specified directory
                string extractfile = @"C:\temp\extracted";
                IronZipArchive.ExtractArchiveToDirectory(filepath + file.FileName, extractfile);
            }
            catch (Exception ex)
            {
                // Handle exception and redirect to Error page
                _logger.LogError(ex, "An error occurred while extracting the ZIP file.");
                return RedirectToAction("Error");
            }

            return RedirectToAction("Get");
        }
    }
}
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.RazorPages;
using IronZip;

namespace IronPDF_WebApp.Pages
{
    public class IndexModel : PageModel
    {
        private readonly ILogger<IndexModel> _logger;

        public IndexModel(ILogger<IndexModel> logger)
        {
            _logger = logger;
        }

        public IActionResult OnPost()
        {
            try
            {
                // Retrieve the uploaded file from the form
                var file = Request.Form.Files[0];

                // Set the file path where the file will be saved
                string filepath = @"C:\temp\uploads\";

                // Save the uploaded file to the specified filepath
                using (var stream = new FileStream(filepath + file.FileName, FileMode.Create))
                {
                    file.CopyToAsync(stream);
                }

                // Extract the ZIP archive to the specified directory
                string extractfile = @"C:\temp\extracted";
                IronZipArchive.ExtractArchiveToDirectory(filepath + file.FileName, extractfile);
            }
            catch (Exception ex)
            {
                // Handle exception and redirect to Error page
                _logger.LogError(ex, "An error occurred while extracting the ZIP file.");
                return RedirectToAction("Error");
            }

            return RedirectToAction("Get");
        }
    }
}
Imports Microsoft.AspNetCore.Mvc
Imports Microsoft.AspNetCore.Mvc.RazorPages
Imports IronZip

Namespace IronPDF_WebApp.Pages
	Public Class IndexModel
		Inherits PageModel

		Private ReadOnly _logger As ILogger(Of IndexModel)

		Public Sub New(ByVal logger As ILogger(Of IndexModel))
			_logger = logger
		End Sub

		Public Function OnPost() As IActionResult
			Try
				' Retrieve the uploaded file from the form
				Dim file = Request.Form.Files(0)

				' Set the file path where the file will be saved
				Dim filepath As String = "C:\temp\uploads\"

				' Save the uploaded file to the specified filepath
				Using stream = New FileStream(filepath & file.FileName, FileMode.Create)
					file.CopyToAsync(stream)
				End Using

				' Extract the ZIP archive to the specified directory
				Dim extractfile As String = "C:\temp\extracted"
				IronZipArchive.ExtractArchiveToDirectory(filepath & file.FileName, extractfile)
			Catch ex As Exception
				' Handle exception and redirect to Error page
				_logger.LogError(ex, "An error occurred while extracting the ZIP file.")
				Return RedirectToAction("Error")
			End Try

			Return RedirectToAction("Get")
		End Function
	End Class
End Namespace
$vbLabelText   $csharpLabel

Stellen Sie im obigen Code sicher, dass der IronZIP-Namensraum importiert wird. In der IronZipArchive-Klasse von IronZIP ist die Funktion ExtractArchiveToDirectory enthalten. Dies ermöglicht es uns, zwei Parameter zu übergeben: das Quell-Dateisystem und den Pfad der zu entpackenden Datei. ZIPArchive ZIP-Dateien können eine beliebige Anzahl von Inhalten haben, und Inhalte können mit ihm extrahiert und in einem dateispezifischen Verzeichnis gespeichert werden. Der Verzeichnispfad, der als Extraktionspunkt für die Inhalte der einzelnen ZIP-Datei dient, ist der einzige Parameter, der von der Methode ExtractArchiveToDirectory benötigt wird.

Um alle Dateien in das angegebene Verzeichnis zu extrahieren, durchläuft diese Funktion intern alle Dateien und Verzeichnisse im ZIP-Paket. Wenn ein Fehler auftritt, wie das Fehlen der ZIP-Datei oder Probleme mit dem Extraktionsprozess, stellen Sie sicher, dass Sie ihn sorgfältig behandeln. Ausnahmen können mit try-catch-Blöcken gefangen und behandelt werden. Für Massenauszieharbeiten erleichtert die Methode ExtractArchiveToDirectory die Extraktion, indem sie die Extraktion aller Dateien und Verzeichnisse innerhalb des ZIP-Archivs verwaltet. ZIP-Dateien können mit Hilfe der IronZIP-Erweiterungsmethode erstellt werden.

Um mehr über die IronZIP-Bibliothek zu erfahren, klicken Sie hier.

5. Fazit

Entwickler können die Komprimierung, Extraktion und Manipulation von ZIP-Dateien mithilfe von IronZIP bewältigen, einer speziell für die Verwaltung von ZIP-Dateien in C#-Anwendungen entwickelten .NET-Bibliothek. IronZIP verwendet eine intuitive API, um komplizierte Verfahren zu rationalisieren und Dateivorgänge wie das Extrahieren bestimmter Dateien, das Extrahieren von Dateien in großen Mengen, das Hinzufügen von Einträgen und das Ändern bestehender Archive zu erleichtern.

Mit dieser Bibliothek können Entwickler die Dateiverwaltungsfähigkeiten verbessern, ohne in C#-Projekten von Grund auf neu anfangen zu müssen. Es integriert sich nahtlos. Dank seiner Vielseitigkeit können ZIP-Inhalte dynamisch verändert werden, wobei Dateien hinzugefügt, geändert und entfernt werden, um verschiedenen Anwendungsanforderungen gerecht zu werden.

Bei der Arbeit mit Situationen wie fehlenden oder beschädigten ZIP-Dateien stellen IronZIPs starke Ausnahmebehandlungsmerkmale einen konsistenten Arbeitsablauf sicher und erleichtern die Fehlerbehebung. Während IronZIP historisch gesehen eine zuverlässige Lösung für die Verwaltung von ZIP-Dateien in .NET-Umgebungen bot, beachten Sie, dass mein Verständnis möglicherweise nicht die neuesten Aktualisierungen widerspiegelt. IronZIP beginnt preislich bei $799 und bietet eine kostenlose Entwicklerversion an. Weitere Informationen zu den Lizenzen finden Sie hier. Für das Iron-Softwareprodukt sehen Sie hier.

Häufig gestellte Fragen

Wie kann ich Dateien in ASP.NET Core entpacken?

Sie können Dateien in ASP.NET Core mittels der IronZIP-Bibliothek entpacken. Installieren Sie zuerst IronZIP über den NuGet-Paket-Manager in Visual Studio, verwenden Sie dann die IronArchive-Klasse und die ExtractArchiveToDirectory-Methode, um Dateien von einer ZIP-Datei in ein angegebenes Verzeichnis zu extrahieren.

Was sind die Hauptmerkmale von IronZIP für den Umgang mit ZIP-Dateien?

IronZIP bietet mehrere Funktionen für den Umgang mit ZIP-Dateien, darunter das Erstellen, Extrahieren, Komprimieren, Verschlüsseln und Bearbeiten von ZIP-Dateien. Es unterstützt Passwortschutz und ist für Leistung optimiert, kompatibel mit verschiedenen .NET-Frameworks.

Wie installiere ich IronZIP in einem C#-Projekt?

Um IronZIP in einem C#-Projekt zu installieren, verwenden Sie den NuGet-Paket-Manager in Visual Studio. Suchen Sie nach 'IronZIP' und installieren Sie es. Alternativ nutzen Sie die Paket-Manager-Konsole mit dem Befehl Install-Package IronZIP.

Kann IronZIP ZIP-Dateien verschlüsseln?

Ja, IronZIP kann ZIP-Dateien verschlüsseln. Es enthält Werkzeuge für Passwortschutz und Verschlüsselung, um die Sicherheit der Inhalte innerhalb von ZIP-Archiven zu gewährleisten.

Was sollte ich tun, wenn ich auf Fehler während der ZIP-Dateiextraktion in ASP.NET Core stoße?

Wenn Sie auf Fehler während der ZIP-Dateiextraktion stoßen, verwenden Sie die Ausnahmebehandlungsfunktionen von IronZIP. Implementieren Sie try-catch-Blöcke, um Ausnahmen wie fehlende oder beschädigte ZIP-Dateien zu behandeln.

Gibt es eine kostenlose Version von IronZIP für Entwickler?

Ja, IronZIP bietet eine kostenlose Entwicklerversion, die es Ihnen ermöglicht, seine Funktionen ohne anfängliche Kosten zu erkunden, zusammen mit seinen kostenpflichtigen Lizenzen.

Warum sollte ich IronZIP für das Management von ZIP-Dateien in meinen ASP.NET Core Projekten verwenden?

IronZIP vereinfacht das Management von ZIP-Dateien in ASP.NET Core-Projekten, indem es eine intuitive API zum Erstellen, Extrahieren und Bearbeiten von ZIP-Archiven bietet und die Fähigkeiten zur Dateiverwaltung verbessert.

Wie handhabt IronZIP die ZIP-Dateiextraktion?

IronZIP handhabt die ZIP-Dateiextraktion mit der ExtractArchiveToDirectory-Methode, die alle Dateien und Verzeichnisse aus einem ZIP-Archiv in einen festgelegten Verzeichnispfad extrahiert und jedes Element im ZIP-Paket effizient verwaltet.

Wie ist der Prozess zur Erstellung eines neuen ASP.NET Core Projekts für die Verwendung mit IronZIP?

Um ein neues ASP.NET Core Projekt zur Verwendung mit IronZIP zu erstellen, richten Sie ein neues Projekt in Visual Studio ein, installieren Sie IronZIP über NuGet und implementieren Sie die IronArchive-Klasse, um ZIP-Dateien mit Methoden wie ExtractArchiveToDirectory zu verwalten.

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