ZIP vers 7z C#

Dans cet article de blog, nous vous guiderons tout au long du processus de conversion d’une archive ZIP au format 7z à l’aide de C#. Le format 7z est connu pour son taux de compression élevé et est largement utilisé pour réduire la taille des fichiers, ce qui le rend idéal pour un stockage et un transfert efficaces. Nous vous montrerons comment mettre en œuvre la conversion en utilisant une approche étape par étape.

Pourquoi convertir ZIP en 7z ?

Il existe plusieurs raisons de convertir des fichiers ZIP en 7z :

  • Réduire la taille des fichiers : le format 7z offre une compression supérieure par rapport au ZIP.

  • Améliorer les performances : des tailles de fichiers plus petites permettent des téléchargements, des chargements et des transferts plus rapides.

  • Taux de compression plus élevé : le format 7z compresse les fichiers plus efficacement, réduisant ainsi la taille des fichiers pour un stockage optimisé.

Convertisseur d’archives ZIP vers 7z - Configuration de l’API C#

Pour convertir les archives ZIP au format 7z, vous devez installer Conholdate.Total pour .NET à l’aide de la commande d’installation NuGet suivante dans Microsoft Visual Studio IDE :

PM> NuGet\Install-Package Conholdate.Total

Convertir ZIP en 7z en C#

Vous pouvez suivre les étapes ci-dessous pour convertir ZIP en 7z en C# :

  • Archive : Ceci représente le fichier ZIP que vous souhaitez convertir. La classe Archive est utilisée pour ouvrir et lire le fichier ZIP.

  • SevenZipArchive : cette classe est utilisée pour créer et enregistrer une archive 7z.

  • SevenZipEntrySettings : spécifie les paramètres de compression pour le format 7z. Dans ce cas, nous utilisons l’algorithme de compression LZMA2 pour une efficacité de compression maximale.

  • MemoryStream : les données du fichier sont copiées en mémoire à l’aide d’un flux, et chaque entrée du fichier ZIP est ajoutée à la nouvelle archive 7z.

L’exemple de code ci-dessous montre comment convertir ZIP en 7z en C# :

using (Archive source = new Archive("source.zip"))
{
    using (var archive = new Aspose.Zip.SevenZip.SevenZipArchive(new SevenZipEntrySettings(new SevenZipLZMA2CompressionSettings())))
    {
        foreach (ArchiveEntry entry in source.Entries)
        {
            if (!entry.IsDirectory)
            {
                MemoryStream mem = new MemoryStream();
                entry.Open().CopyTo(mem);
                mem.Seek(0, SeekOrigin.Begin);
                archive.CreateEntry(entry.Name, mem);
            }
        }
        archive.Save("result.7z");
    }
}

Licence d’évaluation gratuite

Vous pouvez obtenir une licence temporaire gratuite pour évaluer différentes conversions ou manipulations d’archives de votre côté.

Conclusion

En suivant les étapes décrites ci-dessus, vous pouvez facilement convertir un fichier ZIP au format 7z en C#. L’efficacité de compression supérieure du format 7z en fait un excellent choix pour réduire la taille des fichiers, ce qui contribue à améliorer les performances lors de la gestion d’archives volumineuses. Si vous avez besoin de discuter d’ambiguïtés, veuillez nous contacter à l’adresse forum.

FAQ

Puis-je protéger l’archive 7z par mot de passe ?

Oui, le format 7z prend en charge le cryptage avancé, vous permettant de sécuriser votre archive avec un mot de passe.

Puis-je convertir plusieurs fichiers ZIP en 7z en une seule opération ?

Oui, vous pouvez parcourir plusieurs fichiers ZIP et appliquer la même logique pour la conversion.

Dois-je installer le logiciel 7-Zip sur ma machine ?

Non, Conholdate.Total pour .NET inclut tous les composants nécessaires pour travailler avec 7z sans logiciel supplémentaire.

Voir aussi