aspnet-c#

Creare uno Zip di una cartella con .NET

0 Flares 0 Flares ×
FacebookTwitterGoogle+tumblrLinkedIn

Oggi vediamo come creare uno zip di una cartella in modo semplice e con pochissime righe di codice.

Oltre alle novità più importanti e rilevanti, il .NET Framework 4.5 contiene alcune nuove API che cercano di rendere sempre più completo il mondo managed.
Tra queste rientrano due nuovi assembly, di nome System.IO.Compression e System.IO.Compression.FileSystem, che permettono di creare, manipolare ed estrarre file Zip.

La suddivisione in due assembly è stata fatta per separare classi dedicate alla compressione applicata agli Stream, da quelle dedicate alla compressione applicata a file.
Il primo assembly è disponibile con le Portable Class Library, mentre il secondo lo è solo con il framework completo.

L’assembly System.IO.Compression.FileSystem contiene poche, ma efficaci classi.
La più importante è ZipFile, che con i suoi metodi CreateFromDirectory e ExtractToDirectory permettono di creare uno Zip dalla cartella o estrarlo.

L’utilizzo è molto semplice ed è illustrato in questo script.

// Creo lo zip dalla cartella
// Compressione ottimale e includendo anche la cartella stessa
ZipFile.CreateFromDirectory(@"c:\daComprimere", @"c:\mioZip.zip", CompressionLevel.Optimal, true);

// Estraggo lo zip in un'altra cartella
ZipFile.ExtractToDirectory(@"c:\mioZip.zip", @"c:\mioZipEstratto");

Come vediamo dal codice, basta indicare il nome della cartella, il file Zip e un booleano che ci permette di indicare se comprimere la cartella stessa o solo i file e le cartelle che contiene.

FacebookTwitterGoogle+tumblrLinkedIn

Lascia un Commento

L'indirizzo email non verrà pubblicato.

È possibile utilizzare questi tag ed attributi XHTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

0 Flares Twitter 0 Facebook 0 Google+ 0 Pin It Share 0 LinkedIn 0 0 Flares ×