USO DE IRONZIP

Archivo ZIP en C# (Tutorial para desarrolladores con IronZip)

Actualizado 29 de noviembre, 2023
Compartir:

ZIP es un método popular para comprimir y consolidar eficientemente múltiples archivos y carpetas en un archivo ZIP unificado utilizando FileStream. Se puede trabajar con estos archivos en C# utilizando IronZIP que proporciona clases para crear y extraer archivos ZIP existentes a partir de una ruta o de un archivo individual contenido y manipular archivos ZIP. Tanto si está comprimiendo archivos, tratando con ZIPs protegidos por contraseña, o descomprimiendo archivos, la clase ZipFile dentro del espacio de nombres IronZIP se convierte en su inestimable aliado.

En este tutorial, no sólo exploramos los procesos fundamentales de creación y extracción de archivos ZIP, sino que también aprendemos ejemplos de código para lograrlo. La clase ZipArchive avanza sin problemas por la ruta de cadenas, lo que le permite navegar y manipular archivos ZIP con una precisión sin precedentes.

Además, yendo más allá de la manipulación de ZIP, también exploraremos IronPDF una herramienta para comprimir archivos PDF sin comprometer la integridad del documento. Juntos, el tándem IronZIP e IronPDF equipa a los desarrolladores con un sólido conjunto de herramientas para gestionar eficazmente los archivos comprimidos y agilizar los PDF en el entorno C#.

Requisitos previos

Antes de explorar la manipulación de archivos ZIP con IronZIP e IronPDF, asegúrese de que se cumplen los siguientes requisitos previos:

  1. Visual Studio: Instale Visual Studio o cualquier otro entorno de desarrollo integrado de C#. (IDE) de su elección.
  2. Conocimientos básicos de C#: Familiarícese con los conceptos fundamentales del lenguaje de programación C#.

Instalar el paquete IronZIP

Para comenzar su viaje con IronZIP, instale rápidamente el paquete IronZIP NuGet en su proyecto. Ejecute el siguiente comando en la consola de NuGet Package Manager:

Install-Package IronZip

También puede descargar el paquete directamente de la página Sitio web oficial de IronZIP NuGet.

Una vez completada la instalación, inicie su código C# añadiendo la sentencia using IronZIP; en la parte superior.

Aplicar clave de licencia

Asegúrese de que tiene una licencia válida o una clave de prueba para IronZIP. Aplique la clave de licencia asignándola a la propiedad LicenseKey de la clase License. Incluya el siguiente código inmediatamente después de la sentencia import y antes de utilizar cualquier método IronZIP:

IronZip.Licensing.License.LicenseKey = "IRONZIP.MYLICENSE.KEY.1EF01";
IronZip.Licensing.License.LicenseKey = "IRONZIP.MYLICENSE.KEY.1EF01";
IronZip.Licensing.License.LicenseKey = "IRONZIP.MYLICENSE.KEY.1EF01"
VB   C#

Este paso es crucial para liberar todo el potencial de IronZIP en su proyecto.

Crear un archivo ZIP

Crear un archivo ZIP con IronZIP es muy sencillo. Utiliza la clase IronArchive para crear un archivo ZIP vacío y añadirle ficheros. El siguiente fragmento de código muestra la creación de un archivo ZIP llamado "Imágenes.zip" y la adición de cuatro archivos de imagen al mismo:

using IronZip;
namespace C__ZipArchive
{
    internal class Program
    {
        static void Main(string [] args)
        {
            using (var archive = new IronArchive("Images.zip"))
            {
                //  Añadir archivos al ZIP
                archive.Add(@"E:\Datasets\1002-v1.png");
                archive.Add(@"E:\Datasets\1002-v2.png");
                archive.Add(@"E:\Datasets\1002-v3.png");
                archive.Add(@"E:\Datasets\1002-v4.png");
            }
    }
}
using IronZip;
namespace C__ZipArchive
{
    internal class Program
    {
        static void Main(string [] args)
        {
            using (var archive = new IronArchive("Images.zip"))
            {
                //  Añadir archivos al ZIP
                archive.Add(@"E:\Datasets\1002-v1.png");
                archive.Add(@"E:\Datasets\1002-v2.png");
                archive.Add(@"E:\Datasets\1002-v3.png");
                archive.Add(@"E:\Datasets\1002-v4.png");
            }
    }
}
Imports IronZip
Namespace C__ZipArchive
	Friend Class Program
		Shared Sub Main(ByVal args() As String)
			Using archive = New IronArchive("Images.zip")
				'  Añadir archivos al ZIP
				archive.Add("E:\Datasets\1002-v1.png")
				archive.Add("E:\Datasets\1002-v2.png")
				archive.Add("E:\Datasets\1002-v3.png")
				archive.Add("E:\Datasets\1002-v4.png")
			End Using
		End Sub
	End Class
VB   C#

La sentencia using crea una instancia de la clase IronArchive y la asocia a la variable archive. El constructor de IronArchive toma un único argumento: el nombre de un archivo ZIP. ("Imágenes.zip" en este caso).

El código añade cuatro ficheros al archivo ZIP representado por la variable archive. Los archivos se especifican por sus rutas completas:

  • E:\Datasets\1002-v1.png
  • E:\Datasets\1002-v2.png
  • E:\Datasets\1002-v3.png
  • E:\Datasets\1002-v4.png

    Dado que la clase IronArchive implementa IDisposable, la sentencia using asegura que el archivo se cierra correctamente, y los recursos se liberan cuando se sale del bloque de código.

    De este modo, este programa crea un archivo ZIP llamado "Images.zip" y le añade cuatro archivos de imagen. IronZip lo ha hecho muy fácil, rápido y eficaz.

Extraer archivo ZIP

Podemos extraer un archivo zip utilizando una sola línea de código en C#.

using IronZip; //añadir referencias
public static void Main(string [] args)
{
    IronArchive.ExtractArchiveToDirectory("Images.zip", "Extracted Images");
}
using IronZip; //añadir referencias
public static void Main(string [] args)
{
    IronArchive.ExtractArchiveToDirectory("Images.zip", "Extracted Images");
}
Imports IronZip 'añadir referencias
Public Shared Sub Main(ByVal args() As String)
	IronArchive.ExtractArchiveToDirectory("Images.zip", "Extracted Images")
End Sub
VB   C#

El código anterior extrae el contenido del archivo ZIP llamado "Imágenes.zip". Los archivos extraídos se colocan en un directorio llamado "Imágenes extraídas". La clase IronArchive proporciona el método ExtractArchiveToDirectory para este propósito, lo que hace que la extracción del contenido de un archivo zip sea muy eficiente.

csharp-zip-library-tutorial-1 Esta herramienta de una sola línea gestiona eficazmente el proceso de extracción, simplificando la gestión de archivos.

Añadir archivos a un archivo ZIP existente usando C

En las aplicaciones de software C#, añadir archivos a un archivo zip existente resulta muy útil para la gestión dinámica de contenidos. Imagine una aplicación de gestión de archivos en la que los usuarios puedan ampliar fácilmente un archivo comprimido añadiendo nuevos ficheros. IronZIP proporciona una funcionalidad perfecta para modificar cualquier archivo zip existente.

using (var archive = IronArchive.FromFile("Images.zip", "NewImages.zip"))
{
    //  Añadir archivos
    archive.Add(@"E:\Datasets\1011-v1.png");
    archive.Add(@"E:\Datasets\1011-v2.png");
}
using (var archive = IronArchive.FromFile("Images.zip", "NewImages.zip"))
{
    //  Añadir archivos
    archive.Add(@"E:\Datasets\1011-v1.png");
    archive.Add(@"E:\Datasets\1011-v2.png");
}
Using archive = IronArchive.FromFile("Images.zip", "NewImages.zip")
	'  Añadir archivos
	archive.Add("E:\Datasets\1011-v1.png")
	archive.Add("E:\Datasets\1011-v2.png")
End Using
VB   C#

El archivo IronArchive.FromFile("Imágenes.zip", "NuevasImágenes.zip") crea un objeto de archivo a partir de un archivo ZIP existente llamado "Imágenes.zip" y especifica que el nuevo archivo debe llamarse "NuevasImágenes.zip".

Las dos líneas dentro del bloque using añaden ficheros al archivo recién creado:

  • archivo.Añadir(@"E:\Datasets\1011-v1.png");
  • archivo.Añadir(@"E:\Datasets\1011-v2.png");

    Estas líneas añaden los archivos de imagen especificados al archivo "NewImages.zip".

    Sistema de archivos

Comprimir archivo PDF

Además de gestionar archivos ZIP, C# también ofrece la posibilidad de comprimir archivos PDF sin problemas. Esta tarea es posible con la ayuda de una biblioteca de terceros: IronPDF. Destaca por ser una solución fiable para comprimir PDF preservando su calidad.

Presentación de IronPDF

IronPDF es una biblioteca C# versátil diseñada para ayudar a los desarrolladores a manejar eficazmente documentos PDF en sus aplicaciones .NET. Ofrece muchas funciones, como generación y manipulación de PDF, extracción de texto e imágenes, gestión de formularios, firmas digitales, conversión de HTML a PDF, compresión de PDF y mejoras de seguridad. Estas capacidades lo convierten en una herramienta inestimable para tareas como la creación y edición de PDF, la generación de informes y la gestión de documentos dentro del marco .NET, garantizando la productividad y la posibilidad de personalizar las operaciones con PDF.

Instalar IronPDF

Para incorporar IronPDF a su proyecto, ejecute el siguiente comando en la consola del gestor de paquetes:

Install-Package IronZip

Escribir un código para comprimir un archivo PDF en C

El siguiente ejemplo de código demuestra la compresión de archivos PDF manteniendo la calidad del archivo.

using IronPdf;

static void Main(string [] args)
{
    var pdf = new PdfDocument(@"E:\myPDF.pdf");
    //  El parámetro de calidad puede ser de 1 a 100, siendo 100 el 100% de la calidad original.
    pdf.CompressImages(60);
    pdf.SaveAs(@"E:\myCompressedPDF.pdf");
}
using IronPdf;

static void Main(string [] args)
{
    var pdf = new PdfDocument(@"E:\myPDF.pdf");
    //  El parámetro de calidad puede ser de 1 a 100, siendo 100 el 100% de la calidad original.
    pdf.CompressImages(60);
    pdf.SaveAs(@"E:\myCompressedPDF.pdf");
}
Imports IronPdf

Shared Sub Main(ByVal args() As String)
	Dim pdf = New PdfDocument("E:\myPDF.pdf")
	'  El parámetro de calidad puede ser de 1 a 100, siendo 100 el 100% de la calidad original.
	pdf.CompressImages(60)
	pdf.SaveAs("E:\myCompressedPDF.pdf")
End Sub
VB   C#

En el código anterior, hemos abierto "miPDF.pdf" utilizando IronPDF. El método 'CompressImages' reduce la calidad de la imagen al 60%, y el PDF comprimido se guarda como "myCompressedPDF.pdf" en la ubicación especificada.

Salida

La ejecución del código anterior produce una reducción tangible en el tamaño del archivo, como se evidencia en la salida, donde el tamaño del PDF comprimido se reduce a 254 KB desde su tamaño original de 0,9 MB. Esto demuestra la eficacia de IronPDF en la compresión eficiente de archivos PDF sin comprometer su calidad.

Comparación del tamaño de los archivos

Gestión eficiente de archivos con IronZIP e IronPDF en C

En el desarrollo en C#, la combinación entre IronZIP e IronPDF presenta una solución robusta para la gestión integral de archivos. IronZIP destaca en la compresión y manipulación eficaz de archivos ZIP, ofreciendo a los desarrolladores una experiencia perfecta para crear y extraer archivos comprimidos. Al mismo tiempo, IronPDF sirve como una potente herramienta para manejar documentos PDF, permitiendo la compresión de archivos mientras se mantiene la integridad del documento. Esta integración permite a los desarrolladores navegar sin esfuerzo entre archivos comprimidos y archivos PDF, mejorando la funcionalidad y el rendimiento generales de sus aplicaciones.

Tanto si se trata de comprimir diversos ficheros en un archivo ZIP como de optimizar el tamaño de documentos PDF, la potencia combinada de IronZIP e IronPDF forma un conjunto de herramientas flexibles para desarrolladores, que abordan una serie de retos relacionados con los ficheros.

Conclusión

En conclusión, IronZIP para C# ofrece sólidas funciones para trabajar con archivos comprimidos, lo que permite a los desarrolladores crear archivos ZIP y extraer y manipular archivos de forma eficaz. IronPDF también es una potente herramienta para comprimir archivos PDF, lo que facilita la reducción del tamaño de los archivos manteniendo la integridad del documento. Los desarrolladores pueden aprovechar estas funciones para mejorar el rendimiento y la funcionalidad de sus aplicaciones, garantizando el manejo sin problemas de archivos comprimidos y archivados. Además, cabe destacar que IronPDF ofrece un modelo de licencia flexible, que incluye un prueba gratuita para que los desarrolladores exploren sus posibilidades y determinen cuál es la que mejor se adapta a sus proyectos. Este período de prueba ofrece a los desarrolladores una valiosa oportunidad para evaluar las funciones de IronZIP IronPDF antes de comprometerse a licencias.

< ANTERIOR
Cómo crear un archivo Zip en C#
SIGUIENTE >
Cómo extraer archivos Zip en C#

¿Listo para empezar? Versión: 2024.7 recién publicada

Descarga gratuita de NuGet Descargas totales: 2,815 Ver licencias >
123