Créer une archive 7Zip en C#

Dans un article précédent, nous avons exploré diverses méthodes pour créer des archives ZIP en utilisant C#. Dans cet article, nous allons élargir cette base en nous concentrant sur le format 7z. Le format 7z est basé sur une architecture open-source et offre un rapport de compression élevé, ainsi que la capacité d’utiliser le cryptage AES 256 bits pour sécuriser à la fois les fichiers et leurs noms.

Ce que vous apprendrez

Dans ce guide, vous apprendrez à créer des archives 7z (7-Zip) par programmation en utilisant C#. Nous couvrirons :

Tous les exemples et extraits de code sont basés sur l’API Aspose.ZIP pour .NET. Assurez-vous d’avoir l’API installée en utilisant l’une des méthodes suivantes :

Créer une archive 7z (7-Zip) en utilisant C#

Vous pouvez compresser des fichiers dans une archive 7z dans deux scénarios principaux : lorsque vous traitez un fichier unique ou plusieurs fichiers. Voici comment gérer les deux situations.

Créer une archive 7z avec une seule entrée

Pour créer une archive 7z avec un seul fichier, suivez ces étapes :

  1. Ouvrez un nouveau FileStream pour créer un fichier 7z.
  2. Créez une instance de la classe SevenZipArchive.
  3. Ajoutez le fichier à l’archive en utilisant la méthode SevenZipArchive.CreateEntry(String, String, Boolean, SevenZipEntrySettings).
  4. Enregistrez l’archive en utilisant la méthode SevenZipArchive.Save(Stream).

Voici un exemple d’archive 7z en C# démontrant les étapes ci-dessus :

Créer une archive 7z avec plusieurs entrées

Si vous devez compresser plusieurs fichiers, vous pouvez les placer dans un dossier et passer le chemin du dossier à la méthode SevenZipArchive.CreateEntries(). Suivez ces étapes :

  1. Créez une instance de la classe SevenZipArchive.
  2. Passez le chemin du dossier à la méthode SevenZipArchive.CreateEntries(String, Boolean).
  3. Appelez la méthode SevenZipArchive.Save(String).

Voici comment créer une archive 7z avec plusieurs entrées en utilisant C# :

Créer une archive 7z cryptée AES en utilisant C#

Le format 7z prend en charge le cryptage AES pour une sécurité accrue. Pour crypter un fichier 7z, utilisez la classe SevenZipAESEncryptionSettings. Voici un exemple de code qui démontre comment créer une archive 7z cryptée AES en utilisant C# :

Définir des mots de passe différents pour les entrées 7z en utilisant C#

Le format 7z vous permet également d’assigner un mot de passe unique pour chaque entrée de fichier. Si vous compressez plusieurs fichiers, vous pouvez spécifier des mots de passe différents pour chacun. Voici comment procéder :

  1. Créez un nouveau FileStream pour le fichier d’archive 7z.
  2. Accédez à chaque entrée de fichier en utilisant la classe FileInfo.
  3. Créez une instance de la classe SevenZipArchive.
  4. Ajoutez des entrées à l’archive 7z en utilisant la méthode SevenZipArchive.CreateEntry(String, FileInfo, Boolean, SevenZipEntrySettings).
  5. Enregistrez l’archive en utilisant la méthode SevenZipArchive.Save(Stream).

Consultez l’exemple de code suivant pour voir comment définir des mots de passe différents pour chaque entrée dans une archive 7z :

Conclusion

Dans cet article, nous avons exploré comment créer des archives 7z par programmation en utilisant C#. Nous avons également discuté de la mise en œuvre du cryptage AES pour une sécurité renforcée et de la façon de définir des mots de passe uniques pour chaque entrée de fichier. Pour en savoir plus sur la compression et la décompression de fichiers, vous pouvez consulter la documentation Aspose.ZIP.

Articles Connexes

En tirant parti du plugin Aspose pour .NET, vous pouvez facilement intégrer la compression .NET 7-Zip dans vos applications, rationaliser vos processus de gestion de fichiers et améliorer les capacités de votre logiciel. Pour seulement 99 $, vous pouvez débloquer des fonctionnalités puissantes qui prennent en charge la gestion de fichiers volumineux, la compression asynchrone, et plus encore.