DotNetZip es un biblioteca open source que permite comprimir y extraer archivos zip. A diferencia de la librería System.IO.Compression, es más versátil y muy fácil de usar. Lo único que se necesita es bajar el archivo binario (DLL, menos de 20k) o el código fuente y agregarlo a nuestra solución.
Soporta el framework 2.0, 3.0 y 3.5.
Ejemplos
Comprimir un directorio (recursivo, incluye subdirectorios):
using (ZipFile zip = new ZipFile(args[0]))
{
zip.AddDirectory(DirectoryName);
zip.Save();
}
Comprimir múltiples archivos en diferentes directorios:
using System;
using Ionic.Utils.Zip;
public class Example2
{
public static void Main(String[] args)
{
try
{
using (ZipFile zip = new ZipFile("test2.zip"))
{
zip.AddItem("c:\\downloads\\vacaciones01.jpg", "images");
zip.AddItem("c:\\Trabajo\\Specs_Lic2008.pdf", "files\\documents");
zip.AddItem("test2.cs", "files\\text");
zip.Save();
}
}
catch (System.Exception ex1)
{
System.Console.Error.WriteLine("exception: " + ex1);
}
}
}
Extraer todo el contenido de un archivo .ZIP
using (ZipFile zip = ZipFile.Read(zipfile))
{
zip.ExtractAll();
}
2 comentarios:
He obrado con una infinidad zip files. Pero he casualmente chocado con - recuperar arquivo zip. El programa asombra gran cantidad las possibilidades. Por ejemplo el resurso ha restituido a mis documentos corrompidos. Ademas el instrumento puede resolver este problema eficazmente y recuperar zip archives.
Que buena librería. Tenía problema para comprimir un archivo txt con un nombre diferente. Si renombraba el zip, me renombraba el txt y le quitaba la extensión.
Gracias. Me fue de mucha utilidad
Publicar un comentario
Artículos relacionados