Come comprimere una cartella in C#

Come comprimere una cartella in C#

Questo articolo rapido spiega come zipare una cartella in C#. fornisce passaggi dettagliati e un campione di codice per aiutare nella creazione di un file ZIP per una cartella e il suo contenuto.

I vantaggi di Zipping Folders

  • Efficienza spaziale:- Ridurre lo spazio di archiviazione con la compressione dei file.

  • Gestione dei file organizzati:- Combina più file in un unico archivio per facilitare la distribuzione e la gestione.

  • Trasferimenti più veloci:- Le dimensioni dei file più piccole portano a tempi di caricamento e di download più rapidi.

Prerequisiti: preparare l’ambiente

  • Inserisci Visual Studio o qualsiasi compatibile .NET IDE.
  • Installare la libreria Aspose.ZIP tramite NuGet Package Manager.

Guida passo dopo passo per ZIP una cartella

Passo 1: Installare Aspose.ZIP

Aggiungi la libreria Aspose.ZIP al tuo progetto.

Install-Package Aspose.ZIP

Passo 2: Creare un FileStream Object

Improvvisamente a FileStream L’oggetto per il file ZIP di uscita.

using System.IO;
var zippedFolder = File.Open("AnimationImages.zip", FileMode.Create);

Passo 3: Creare un oggetto di archivio ZIP

Crea un esempio di Archive per gestire le operazioni ZIP.

using (Archive archiveFile = new Archive())
{
    // Further processing follows here
}

Passo 4: Creare le entrate nell’archivio

Aggiungi tutti i file e le cartelle dal directory target ripetutamente.

archiveFile.CreateEntries("AnimationImages");

Passo 5: Salva il file ZIP

Una volta che le entrate sono create, salvare l’archivio sul disco.

archiveFile.Save(zippedFolder);

Esempio di codice completo per ZIP una cartella

Ecco l’esempio completo di C# che dimostra come zipare una cartella:

// Create a file stream object for the output zip file
using (FileStream zippedFolder = File.Open("AnimationImages.zip", FileMode.Create))
{
    // Create a Zip archive file class object
    using (Archive archiveFile = new Archive())
    {
        // Add all the files and folders recursively
        archiveFile.CreateEntries("AnimationImages");

        // Save the output ZIP file
        archiveFile.Save(zippedFolder);
    }
}

Informazioni aggiuntive

  • Puoi fornire un oggetto di classe DirectoryInfo come fonte dei file per il file ZIP di uscita.
  • Puoi anche includere le bandiere per controllare se includere la cartella radice nell’output ZIP.

conclusione

Questo tutorial vi ha guidato attraverso il processo di zipping una cartella completa in C#. Con solo poche righe di codice, è possibile gestire facilmente le strutture della cartella e creare archivi ZIP in modo efficiente. Per ulteriori funzionalità, controllare i tutorial sull’estrazione di file ZIP o creare diversi tipi di archivi.

 Italiano