Come estrarre il file zip in C#

In questo tutorial, ti mostreremo come estrarre il file Zip in codice C#. Puoi usare C# per decomprimere un archivio nelle tue applicazioni. Questo codice supporta più zip or archive file formats come GZip, RAR, TAR, 7Zip e altri.

Passaggi per estrarre il file zip in C#

  1. Installa il pacchetto Aspose.Zip for .NET da NuGet.org
  2. Includi Aspose.Zip spazio dei nomi nel codice
  3. Utilizzare il metodo SetLicense per impostare la licenza dell’API Aspose.Zip
  4. Carica il file Zip di input in un oggetto FileStream
  5. Crea un nuovo Archive object dal flusso di file
  6. Ottieni il conteggio dei file nell’archivio e scorre le voci dell’archivio
  7. Estrarre ogni voce di archivio e salvare il file sul disco

Ogni voce nell’archivio contiene non solo il file, ma anche il nome del file. Abbiamo utilizzato la proprietà Name per ottenere il nome del file e quindi estratto il file con lo stesso nome.

Codice per estrarre il file zip in C#

using System;
using System.IO;
using System.Text;
//Add reference to Aspose.Zip for .NET API
//Use following namespace to extract zip file
using Aspose.Zip;
namespace ExtractZipFile
{
class Program
{
static void Main(string[] args)
{
//Set Aspose license before extracting Zip file
//using Aspose.Zip for .NET
Aspose.Zip.License AsposeZipLicense = new Aspose.Zip.License();
AsposeZipLicense.SetLicense(@"c:\asposelicense\license.lic");
//Open file from disk using a file stream
FileStream ZipFileToBeExtracted = File.Open("ZipFileToBeExtracted.zip", FileMode.Open);
//Load Zip file stream to Archive object
Archive ZipArchiveToExtract = new Archive(ZipFileToBeExtracted);
//Get number of files
int NumberOfFileInArchive = ZipArchiveToExtract.Entries.Count;
//Loop through the archive for each file
for(int FileCounter =0; FileCounter < NumberOfFileInArchive; FileCounter++)
{
//Get each zip archive entry and extract the file
ArchiveEntry ArchiveFileEntry = ZipArchiveToExtract.Entries[FileCounter];
string NameOfFileInZipEntry = ArchiveFileEntry.Name;
ArchiveFileEntry.Extract(NameOfFileInZipEntry);
}
}
}
}

Nel codice sopra, abbiamo utilizzato FileStream per caricare Zip archive e quindi salvato i file di output estratti sul disco. Puoi anche usare questo codice in C# per decomprimere il file in memoria. Questo può essere utile quando hai bisogno di quei file più avanti nel codice o nell’applicazione e non vuoi salvarli su disco. Utilizzando questo codice, puoi creare facilmente e rapidamente il tuo estrattore C# Zip nelle tue applicazioni o come utilità indipendente.

 Italiano