Come convertire CAB in 7ZIP utilizzando C#

Innanzitutto, devi ottenere e fare riferimento alla libreria Aspose.Zip nel tuo progetto C#. In genere è possibile scaricarlo dal sito Web Aspose o utilizzare un pacchetto NuGet se disponibile. Gestore pacchetti, cerca Aspose.ZIP e installa. Puoi anche utilizzare il seguente comando dalla Console di gestione pacchetti.

Gestisci i pacchetti NuGet con il pacchetto Visual Studio

Comando della console di Gestione pacchetti:

PM> Install-Package Aspose.Zip

Passaggi per convertire CAB in 7ZIP tramite C#

Convertation from CAB to 7ZIP consist of following steps:

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

Requisiti di 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.

Codice di esempio per convertire da CAB a 7ZIP

Codice da CAB in vari formati: l’archivio CAB contiene in genere più record o file. Per convertire questo archivio in formati come GZ (Gzip), LZ (Lzip), Z (Unix Compress), XZ (XZ Utils) e BZ2 (Bzip2), un approccio comune consiste nel comprimere prima i contenuti in un TAR (Tape formato archivio). Questo processo ricorda la pratica tipica negli ambienti Linux.

In questo processo di conversione, ogni file o record all’interno dell’archivio CAB viene prima raggruppato in un unico archivio TAR. Questo archivio TAR funge da contenitore per i singoli file, preservandone la struttura e i metadati originali. Una volta incapsulati i dati all’interno dell’archivio TAR, diventa più semplice applicare diversi algoritmi e formati di compressione.

La scelta di TAR come formato intermedio è dovuta alla sua semplicità e all’ampia compatibilità tra vari sistemi operativi simili a Unix. Fornisce un modo semplice per raggruppare i file senza applicare direttamente la compressione. Una volta completata la creazione del pacchetto TAR, è possibile applicare le successive operazioni di compressione all’archivio TAR per generare i formati di output desiderati, come GZ, LZ, Z, XZ o BZ2.

Convertire da 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");
    }



App gratuita per convertire ZIP in 7ZIP

Controlla le nostre demo dal vivo per la conversione da CAB a 7ZIP con i seguenti vantaggi


Una libreria Aspose.ZIP affidabile in grado di comprimere, estrarre, crittografare, decrittografare, convertire e unire archivi. Aspose.ZIP per .NET API consente di manipolare vari tipi di archivio senza entrare nella complessità sottostante dei formati di file compressi con sforzi minimi di codifica.

Altre conversioni CAB supportate

Puoi anche convertire CAB in molti altri formati di file, inclusi alcuni elencati di seguito.