Cómo convertir CAB a 7ZIP usando C#

Primero, debe obtener y hacer referencia a la biblioteca Aspose.Zip en su proyecto C#. Normalmente puede descargarlo del sitio web de Aspose o utilizar un paquete NuGet si está disponible. Administrador de paquetes, busque Aspose.ZIP e instálelo. También puede utilizar el siguiente comando desde la Consola del Administrador de paquetes.

Administre paquetes NuGet con el paquete Visual Studio

Comando de la consola del administrador de paquetes:

PM> Install-Package Aspose.Zip

Pasos para convertir CAB a 7ZIP mediante C#

Convertation from CAB to 7ZIP consist of following steps:

  • Extract archive to intermediate storage
  • Compress extracted data to desired format

Requisitos del sistema

Before running the conversion example code, make sure that you have the following prerequisites.

  • Microsoft Windows or a compatible OS with .NET Framework, Mono and COM Interop.
  • Development environment like Microsoft Visual Studio.
  • Aspose.Tasks for .NET DLL referenced in your project.

Código de muestra para convertir de CAB a 7ZIP

Código de CAB a varios formatos: el archivo CAB normalmente contiene varios registros o archivos. Para convertir este archivo a formatos como GZ (Gzip), LZ (Lzip), Z (Unix Compress), XZ (XZ Utils) y BZ2 (Bzip2), un enfoque común es empaquetar primero el contenido en un TAR (Tape Archivo) formato. Este proceso recuerda a la práctica típica en entornos Linux.

En este proceso de conversión, cada archivo o registro dentro del archivo CAB primero se agrupa en un único archivo TAR. Este archivo TAR sirve como contenedor para los archivos individuales, preservando su estructura y metadatos originales. Una vez que los datos se encapsulan en el archivo TAR, resulta más fácil aplicar diferentes algoritmos y formatos de compresión.

La elección de TAR como formato intermedio se debe a su simplicidad y amplia compatibilidad entre varios sistemas operativos tipo Unix. Proporciona una forma sencilla de agrupar archivos sin aplicar compresión directamente. Una vez completado el empaquetado TAR, se pueden aplicar operaciones de compresión posteriores al archivo TAR para generar los formatos de salida deseados, como GZ, LZ, Z, XZ o BZ2.

Convertir de CAB a 7ZIP - C#:

    using (SevenZipArchive sevenZipArchive =  new SevenZipArchive(new SevenZipEntrySettings(new SevenZipLZMA2CompressionSettings(1048576))))
    {
        using (CabArchive cabArchive = new CabArchive("archive.cab"))
        {
            for (int i = 0; i < cabArchive.Entries.Count; i++)
            {
                var ms = new MemoryStream();
                cabArchive.Entries[i].Extract(ms);
                ms.Seek(0, SeekOrigin.Begin);
                sevenZipArchive.CreateEntry(cabArchive.Entries[i].Name.Replace('\\', '/'), ms);
            }
        }

        sevenZipArchive.Save("output.7z");
    }



Aplicación gratuita para convertir ZIP a 7ZIP

Consulte nuestras demostraciones en vivo para conocer la conversión de CAB a 7ZIP con los siguientes beneficios


Una biblioteca Aspose.ZIP confiable que puede comprimir, extraer, cifrar, descifrar, convertir y fusionar archivos. Aspose.ZIP para .NET API permite manipular varios tipos de archivos sin entrar en la complejidad subyacente de los formatos de archivos comprimidos con un mínimo esfuerzo de codificación.

Otras conversiones CAB admitidas

También puede convertir CAB a muchos otros formatos de archivo, incluidos algunos que se enumeran a continuación.