Utilizzare le librerie native di .NET per comprimere uno o più file in formato ZIP

di Stefano Mostarda, in .NET Framework,

Nello script #702 abbiamo visto come aprire un file ZIP e decomprimerne il contenuto in una cartella. In questo script vediamo invece come prendere uno o più file e comprimerli in un file zip. Cominciamo col vedere il seguente esempio.

public void Compress(string source, string zip)
{
    using (var output = new FileStream(zip, FileMode.Create))
    {
      using (var archive = new ZipArchive(output, ZipArchiveMode.Create))
      {
        archive.CreateEntryFromFile(source, Path.GetFileName(source));
      }
    }

    Console.WriteLine("File ZIP creato con successo");
}

in questo esempio creiamo un FileStream per il file di oputput, successivamente lo mandiamo in input a un'istanza di ZipArchive che si occupa di comprimere i file in formato zip. I file da convertire vengono forniti tramite il metodo CreateEntryFromFile che prende in input come primo parametro il percorso del file da comprimere e come secondo parametro il nome di questo file. Se vogliamo fornire più file, ci basta chiamare più volte CreateEntryFromFile passando ogni volta un file diverso.

Commenti

Visualizza/aggiungi commenti

| Condividi su: LinkedIn, Facebook

Per inserire un commento, devi avere un account.

Fai il login e torna a questa pagina, oppure registrati alla nostra community.

Approfondimenti

I più letti di oggi