IRONSOFTWAREHOME
UTILISER IRONZIP

Comment Zipper Des Fichiers Dans Un Dossier Utilisant C#

Curtis Chau
Curtis Chau
Updated: 21 avril 2026

Les fichiers ZIP sont des fichiers qui contiennent un ou plusieurs fichiers ou dossiers compressés au format ZIP. C'est une façon courante de compresser et d'archiver plusieurs fichiers ou dossiers en un seul fichier. Ils peuvent réduire la taille des données, économiser de l'espace disque et faciliter le transfert de fichiers sur Internet. Dans cet article, vous apprendrez à travailler avec ZIP fichiers en C# en utilisant la bibliothèque IronZIP. Vous verrez comment créer, lire, extraire et mettre à jour des fichiers ZIP par programmation, ainsi que comment utiliser diverses fonctionnalités de IronZIP, telles que le cryptage, la protection par mot de passe et les niveaux de compression. À la fin de cet article, vous serez capable d'utiliser IronZIP pour gérer les fichiers ZIP dans vos applications C# facilement.

Ce que nous couvrirons dans cet article

  1. Installer IronZIP dans notre projet
  2. Créer un fichier ZIP
  3. Créer un fichier ZIP protégé par mot de passe
  4. Extraire un fichier ZIP
  5. Extraire un fichier ZIP protégé par mot de passe
  6. Accéder à une archive ZIP existante

Qu'est-ce qu'IronZIP ?

IronZIP est une bibliothèque d'archives ZIP puissante et polyvalente pour C# qui vous permet de créer, lire et extraire des fichiers ZIP par programmation. Il prend en charge divers formats d'archives, tels que ZIP, TAR, GZIP et BZIP2. Il prend également en charge la protection par mot de passe, le cryptage et les niveaux de compression. IronZIP est compatible avec .NET 8, 7, 6, Core, Standard et Framework.

IronZIP peut vous aider à gérer divers cas d'utilisation et avantages de travailler avec des fichiers ZIP, tels que :

  1. Création d'un système de sauvegarde : Vous pouvez utiliser IronZIP pour compresser et chiffrer vos fichiers et dossiers importants dans une archive ZIP et les stocker dans un emplacement sécurisé. De cette manière, vous pouvez économiser de l'espace disque et protéger vos données contre tout accès non autorisé.
  2. Envoi de pièces jointes : Vous pouvez utiliser IronZIP pour réduire la taille de vos pièces jointes en les compressant dans un fichier ZIP. Cela vous permettra d'éviter de dépasser la limite de taille de fichier et d'accélérer la transmission.
  3. Téléchargement de fichiers depuis le Web : Vous pouvez utiliser IronZIP pour télécharger et extraire des fichiers ZIP depuis le Web, tels que des logiciels, des documents, des images et d'autres types de fichiers. Cela peut vous aider à économiser de la bande passante et du temps et à accéder facilement aux fichiers dont vous avez besoin.

Commencer avec IronZIP

Avant d'écrire le code, vous devez installer le package NuGet IronZIP dans votre projet C#. IronZIP est une bibliothèque de compression populaire disponible via NuGet.

Installer la bibliothèque IronZIP

Pour installer IronZIP, vous pouvez utiliser la console du gestionnaire de packages NuGet dans Visual Studio. Il vous suffit d'exécuter la commande suivante :

PM > Install-Package IronZip

Alternativement, vous pouvez télécharger le package directement depuis le site officiel de IronZIP. Une fois installé, vous pouvez commencer par ajouter l'espace de noms suivant en haut de votre code C#.

using IronZip;

Créer des fichiers ZIP C# dans un dossier

Vous pouvez facilement créer des fichiers ZIP dans un dossier en utilisant IronZIP. Le code suivant zipe tous les fichiers du répertoire spécifié.

using System;
using System.IO;
using IronZip;

class Program
{
    static void Main(string[] args)
    {
        // Get all files from the specified directory
        string[] fileArray = Directory.GetFiles(@"D:\Docs\");
        
        // Create a new ZIP archive
        using (var archive = new IronZipArchive())
        {
            // Iterate through each file and add it to the archive
            foreach (var file in fileArray)
            {
                archive.Add(file); // Add files to the ZIP
            }
            // Save the archive to a file
            archive.SaveAs("myZipFile.zip");
        }
    }
}

Le code C# ci-dessus utilise la bibliothèque IronZIP pour compresser tous les fichiers en un seul fichier ZIP. Le code effectue les actions suivantes :

  • Déclare un tableau de chaînes nommé fileArray et lui assigne le résultat de la méthode Directory.GetFiles, en passant le chemin du répertoire ("D:\Docs") en paramètre. Cette méthode renvoie un tableau de chaînes contenant les noms complets de tous les fichiers du répertoire spécifié.
  • Crée une nouvelle instance de la classe IronZipArchive, qui représente une archive ZIP en mémoire. L'instance est assignée à une variable nommée archive et est enveloppée dans une instruction using, qui garantit que l'archive ZIP est libérée lorsque le bloc de code se termine.
  • Itère sur le tableau fileArray en utilisant une boucle foreach, et pour chaque fichier, il appelle la méthode Add de l'objet archive, en passant le nom du fichier en paramètre. Cette méthode ajoute une nouvelle entrée à l'archive ZIP, avec le même nom et contenu que le fichier.
  • Appelle la méthode SaveAs de l'objet archive, en passant le nom du fichier ZIP (" myZipFile.zip ") en paramètre. Cette méthode enregistre l'archive ZIP dans un fichier dans le système de fichiers courant.

De cette manière, vous pouvez facilement créer de nouvelles archives ZIP en quelques lignes de code.

Sortie

La sortie est la suivante :

Comment zipper des fichiers dans un dossier en utilisant C#: Figure 1 - Fichiers de sortie de l'exemple de code précédent

Créer un fichier ZIP protégé par mot de passe

IronZIP fournit une méthode simple pour créer des fichiers ZIP protégés par mot de passe. L'exemple de code suivant comprimera les fichiers et créera un nouveau fichier ZIP avec un mot de passe.

using System;
using System.IO;
using IronZip;

class Program
{
    static void Main(string[] args)
    {
        // Get all files from the specified directory
        string[] fileArray = Directory.GetFiles(@"D:\Docs\");
        
        // Create a new ZIP archive
        using (var archive = new IronZipArchive())
        {
            // Iterate through each file and add it to the archive
            foreach (var file in fileArray)
            {
                archive.Add(file); // Add files to the ZIP
            }
            // Set Password and Encryption Method
            archive.Encrypt("myPa55word", EncryptionMethods.AES256);
            // Save the archive to a file
            archive.SaveAs("myZipFile.zip");
        }
    }
}

La ligne archive.Encrypt("myPa55word", EncryptionMethods.AES256); définit un mot de passe ("myPa55word") pour une archive ZIP en utilisant IronZIP. Elle améliore la sécurité en appliquant un chiffrement AES-256 à l'archive, garantissant que seuls les utilisateurs avec le mot de passe correct peuvent accéder à son contenu. Cette fonction est précieuse pour protéger les données sensibles pendant le stockage ou le transfert dans les applications C#. Vous devez passer le mode spécifié de l'algorithme de cryptage comme second paramètre.

Le fichier est crypté comme montré ci-dessous.

Sortie

Comment zipper des fichiers dans un dossier en utilisant C#: Figure 2 - Fichier chiffré de sortie de l'exemple de code précédent

Nous avons vu la démonstration de la création d'un fichier ZIP en parcourant les répertoires depuis le chemin spécifié. Maintenant, passons à l'exemple de décompression des fichiers.

Extraire des fichiers depuis une archive ZIP

IronZIP fournit une méthode pour extraire des fichiers d'une archive ZIP en C#. L'exemple de code suivant extraira le fichier compressé dans une archive ZIP.

using IronZip;

class Program
{
    static void Main(string[] args)
    {
        // Extract all files from the ZIP archive to the specified directory
        IronZipArchive.ExtractArchiveToDirectory("myZipFile.zip", "myExtractedFiles");
    }
}

Le code IronZipArchive.ExtractArchiveToDirectory("myZipFile.zip", "myExtractedFiles"); utilise IronZIP pour extraire tous les fichiers de "myZipFile.zip" et les place dans le répertoire "myExtractedFiles". Cette méthode concise simplifie le processus d'extraction des archives ZIP en C#, fournissant une solution pratique pour les tâches d'extraction de fichiers.

Sortie

La sortie est la suivante :

Comment zipper des fichiers dans un dossier en utilisant C#: Figure 3 - Fichiers de sortie de l'exemple de code précédent

Comment extraire depuis un fichier ZIP protégé par mot de passe

IronZIP fournit également une méthode pour extraire des fichiers ZIP protégés par mot de passe. Le code suivant utilisera la méthode IronZIP pour extraire tous les fichiers et répertoires existants du fichier ZIP spécifié.

using IronZip;

class Program
{
    static void Main(string[] args)
    {
        // Extract all files from the password-protected ZIP archive to the specified directory
        IronZipArchive.ExtractArchiveToDirectory("myZipFile.zip", "myExtractedFiles", "myPa55word");
    }
}

La méthode ExtractArchiveToDirectory de la classe IronZipArchive extrait toutes les entrées d'une archive ZIP vers un répertoire spécifié. Elle passe trois arguments à la méthode : le chemin du fichier ZIP ("myZipFile.zip"), le chemin du répertoire de destination ("myExtractedFiles") et le mot de passe du fichier ZIP ("myPa55word").

De cette manière, vous pouvez facilement extraire des fichiers ZIP protégés par mot de passe.

Comment accéder à une archive existante

IronZIP fournit des méthodes pour accéder à l'archive existante et visualiser toutes les entrées présentes dans le fichier.

using System;
using System.Collections.Generic;
using IronZip;

class Program
{
    static void Main(string[] args)
    {
        // Open an existing ZIP archive with a password
        using (var archive = new IronZipArchive("myZipFile.zip", "myPa55word"))
        {
            // Get entries list
            List<string> names = archive.GetArchiveEntryNames();
            // Iterate through each entry name and print it
            foreach (string name in names)
            {
                Console.WriteLine(name);
            }
        }
    }
}

Le code C# fourni utilise IronZIP pour créer une instance sécurisée IronZipArchive en chargeant un fichier ZIP nommé "myZipFile.zip" avec le mot de passe "myPa55word". Ne passez pas le paramètre de mot de passe si le fichier n'est pas chiffré. Il récupère ensuite et imprime la liste des noms d'entrée (noms de fichiers et de dossiers) dans l'archive ZIP chiffrée.

La méthode GetArchiveEntryNames rassemble les noms des entrées, et une boucle foreach affiche chaque nom sur la console. Cela démontre comment IronZIP permet un accès sécurisé et une récupération des informations d'entrées des archives ZIP protégées par mot de passe de manière concise.

Sortie

Comment zipper des fichiers dans un dossier en utilisant C#: Figure 4 - Sortie de l'exemple de code précédent

Conclusion

En conclusion, IronZIP s'avère être une bibliothèque C# robuste et polyvalente pour travailler avec les fichiers ZIP. Ses capacités vont au-delà de la simple compression et extraction, offrant des fonctionnalités telles que la protection par mot de passe, le cryptage et la compatibilité avec divers formats d'archives. Que vous créiez des systèmes de sauvegarde, gériez des pièces jointes par e-mail ou téléchargiez des fichiers depuis le web, IronZIP simplifie ces tâches avec simplicité et efficacité.

En intégrant IronZIP dans vos applications C#, vous obtenez un outil puissant pour gérer les fichiers ZIP, améliorer la sécurité des données et optimiser les processus de transfert de fichiers. Vous pouvez bénéficier d'un essai gratuit si nécessaire.

Curtis Chau
Rédacteur technique

Curtis Chau détient un baccalauréat en informatique (Université de Carleton) et se spécialise dans le développement front-end avec expertise en Node.js, TypeScript, JavaScript et React. Passionné par la création d'interfaces utilisateur intuitives et esthétiquement plaisantes, Curtis aime travailler avec des frameworks modernes et créer des manuels bien structurés et visuellement attrayants.

...
Lire la suite

Articles connexes

Key in blue circle

Obtenez votre clé d'essai de 30 jours instantanément.

Your trial license will be sent to your email address

Aucune restriction. 100 % débloqué. Pas de carte bancaire.

bullet_checkedAucune carte de crédit ou création de compte requiseAucune restriction. 100 % débloqué. Pas de carte bancaire.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Réservez votre Démonstration en direct gratuite
Booking Badge

De confiance par des millions d'ingénieurs dans le monde entier

Logos des clients d'Iron Software
Obtenez Votre Consultation sans Engagement
Remplissez le formulaire ci-dessous ou envoyez un email à sales@ironsoftware.com
Vos informations seront toujours gardées confidentielles.
De confiance par des millions d'ingénieurs dans le monde entier
Logos des clients d'Iron Software
Obtenez votre clé d'essai 30 jours gratuitement.
Aucune carte de crédit ou création de compte requise