Crear archivo ZIP a través de C#

Compresión eficiente con C#: reducción del tamaño de los archivos dentro de cualquier aplicación basada en .NET.

Cómo crear una carpeta Zip comprimida

Es una práctica común comprimir el contenido de un archivo o carpeta en un archivo ZIP para utilizar el espacio, realizar copias de seguridad, transportar datos y guardarlos de una manera más organizada y administrada. Además, luego extrae ese contenido a una nueva carpeta o unidad. Entonces, para Cómo comprimir y extraer archivos, la API ZIP de C# lo ha simplificado. Los programadores de C# pueden integrar fácilmente API y escribir código para comprimir imágenes, archivos PDF, documentos de Word, hojas de cálculo de Excel e incluso carpetas completas. API admite ZipCrypto para generar archivos protegidos con contraseña, así como para utilizar el cifrado AES para cifrar archivos. Incluso los desarrolladores pueden configurar el modo de compresión paralela o utilizar la compresión BZip2, LZMA o PPMd dentro del archivo. A continuación se muestran algunos fragmentos de código de muestra para crear archivos zip basados ​​en C#.

C# Crear archivo de archivos de imagen ZIP

Crear archivos con imágenes que incluyen BMP, JPG, GIF, TIFF y más es sencillo usando la API. El proceso de agregar una imagen al archivo es: crear un objeto FileStream para las imágenes de salida. Archivo ZIP. Abra la imagen de origen en el objeto FileStream. Cree el objeto [clase de archivos] de API ( https://apireference.aspose.com/zip/net/aspose.zip/archive) . Agregue la imagen usando el método CreateEntry al archivo. Cree el archivo que contiene imágenes usando el Método de guardado .

Código C# para crear un archivo ZIP que contenga archivos de imagen.

  // For complete examples and data files, please go to https://github.com/aspose-zip/Aspose.ZIP-for-.NET
  using (FileStream zipFile = File.Open(dataDir + "CompressSingleFile_out.zip", FileMode.Create))
  {
      //File to be added to archive
      using (FileStream source1 = File.Open(dataDir + "picture123.png", FileMode.Open, FileAccess.Read))
      {
          using (var archive = new Archive(new ArchiveEntrySettings()))
          {
              archive.CreateEntry("picture123.png", source1);
              
              archive.Save(zipFile);
          }
      }
  }

C# Convertir PDF a archivo ZIP

Para crear un archivo ZIP de documentos PDF, el proceso es el mismo que el de las imágenes. Cree un objeto Archivo, usando su objeto, llame al método CreateEntry que tiene el archivo PDF como parámetro y finalmente invoque la función Guardar para la creación de zip. La API también proporciona algunas formas sencillas de comprimir archivos PDF, como agregar varios archivos a un archivo, almacenarlos sin compresión, agregar carpetas y mucho más.

Código C# para crear un archivo ZIP de archivos PDF

  var dir = "full directory path";
  using (var arch = new Archive())
  {
    arch.CreateEntry("filename.pdf", dir+"file.pdf");
    arch.Save(dir+"pdf-files-archived_result.zip");
  }

ZIP múltiples archivos con contraseña

ForAPI admite el archivado de múltiples archivos y carpetas con diferentes cifrados, como cifrado tradicional, AES128, AES192 y AES256. El proceso es el mismo que para el archivado de imágenes y PDF distintos del objeto de cifrado relacionado.

Código C# para archivar varios archivos con cifrado

  using (FileStream zipFile = File.Open(dataDir + "CompressWithTraditionalEncryption_out.zip", FileMode.Create))
  {
      using (FileStream file1 = File.Open(dataDir + "alice29.txt", FileMode.Open, FileAccess.Read))
      {
      using (FileStream file2 = File.Open(dataDir + "asyoulike.txt", FileMode.Open, FileAccess.Read))
        {
          using (var archive = new Archive(new ArchiveEntrySettings(null, new TraditionalEncryptionSettings("p@s$"))))
          {
            archive.CreateEntry("alice29.txt", file1);
            archive.CreateEntry("asyoulik3.txt", file2);
            archive.Save(zipFile);
          }
                
        }
      }
  }

Funciones de compresión en la documentación Aspose.ZIP para .NET

La API Aspose.Zip .NET es reconocida por su sólida capacidad para gestionar la compleja compresión de archivos, lo que permite una transformación sin esfuerzo entre diversos formatos de archivo con una eficiencia y confiabilidad excepcionales. Con la capacidad de comprimir archivos ZIP a otros formatos de archivo destacados y viceversa, los desarrolladores pueden garantizar la integridad de los datos y un rendimiento óptimo en una variedad de plataformas y aplicaciones. Esta característica de compresión fundamental agiliza los procesos de transferencia, almacenamiento y uso compartido de datos, facilitando una compatibilidad fluida con diversos entornos de software. Al aprovechar el potencial de Aspose.Zip .NET API, los usuarios pueden manipular fácilmente archivos comprimidos e integrarlos perfectamente con las aplicaciones que deseen, mejorando así su productividad general y la eficiencia del flujo de trabajo. El espacio de nombres ZIP incorpora clases que representan archivos zip y otras entidades comunes relacionadas con archivos.