Comment convertir CAB en 7ZIP en utilisant C#

Tout d’abord, vous devez obtenir et référencer la bibliothèque Aspose.Zip dans votre projet C#. Vous pouvez généralement le télécharger à partir du site Web Aspose ou utiliser un package NuGet si disponible. Gestionnaire de packages, recherchez Aspose.ZIP et installez. Vous pouvez également utiliser la commande suivante à partir de la console Package Manager.

Gérer les packages NuGet avec le package Visual Studio

Commande de la console du gestionnaire de packages :

PM> Install-Package Aspose.Zip

Étapes pour convertir CAB en 7ZIP via C#

Convertation from CAB to 7ZIP consist of following steps:

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

Configuration requise

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.

Exemple de code pour convertir de CAB en 7ZIP

Code du CAB vers différents formats : l’archive CAB contient généralement plusieurs enregistrements ou fichiers. Pour convertir cette archive dans des formats tels que GZ (Gzip), LZ (Lzip), Z (Unix Compress), XZ (XZ Utils) et BZ2 (Bzip2), une approche courante consiste à d’abord regrouper le contenu dans un fichier TAR (Tape Archive). Ce processus rappelle la pratique typique dans les environnements Linux.

Dans ce processus de conversion, chaque fichier ou enregistrement de l’archive CAB est d’abord regroupé dans une seule archive TAR. Cette archive TAR sert de conteneur pour les fichiers individuels, préservant leur structure et leurs métadonnées d’origine. Une fois les données encapsulées dans l’archive TAR, il devient plus facile d’appliquer différents algorithmes et formats de compression.

Le choix de TAR comme format intermédiaire est dû à sa simplicité et à sa large compatibilité avec divers systèmes d’exploitation de type Unix. Il fournit un moyen simple de regrouper des fichiers sans appliquer directement la compression. Une fois le packaging TAR terminé, les opérations de compression ultérieures peuvent être appliquées à l’archive TAR pour générer les formats de sortie souhaités, tels que GZ, LZ, Z, XZ ou BZ2.

Convertir de CAB en 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");
    }



Application gratuite pour convertir ZIP en 7ZIP

Consultez nos démos en direct pour la conversion CAB en 7ZIP avec les avantages suivants


Une bibliothèque Aspose.ZIP fiable qui peut compresser, extraire, crypter, déchiffrer, convertir et fusionner des archives. L’API Aspose.ZIP pour .NET permet de manipuler différents types d’archives sans entrer dans la complexité sous-jacente des formats de fichiers compressés avec un minimum d’efforts de codage.

Autres conversions CAB prises en charge

Vous pouvez également convertir CAB dans de nombreux autres formats de fichiers, dont quelques-uns répertoriés ci-dessous.