Dossiers ZIP et d�compress�s dans .NET

L’API Aspose.ZIP vous permet de compresser et d�compresser des fichiers sans vous soucier de la structure des fichiers sous-jacents. Cet article montre l’utilisation de la compression de fichiers uniques ou multiples.

Compression du r�pertoire

Compression du contenu du r�pertoire

�tapes�: Compresser le contenu du r�pertoire dans des fichiers ZIP � l’aide de C#

  1. D�finissez le r�pertoire contenant les fichiers � compresser.
  2. Ouvrez deux flux de fichiers pour les fichiers ZIP de sortie � l’aide de FileMode.Create.
  3. Cr�ez une instance de la classe Archive.
  4. Utilisez la m�thode CreateEntries pour ajouter tous les fichiers et dossiers du r�pertoire sp�cifi� � l’archive.
  5. Enregistrez le contenu du r�pertoire compress� dans plusieurs fichiers ZIP � l’aide de la m�thode Save.
 1    // For complete examples and data files, please go to https://github.com/aspose-zip/Aspose.ZIP-for-.NET
 2    string dataDir = RunExamples.GetDataDir_Data();
 3
 4    using (FileStream zipFile = File.Open(dataDir + "CompressDirectory_out.zip", FileMode.Create))
 5    {
 6        using (FileStream zipFile2 = File.Open(dataDir + "CompressDirectory2_out.zip", FileMode.Create))
 7        {
 8            using (Archive archive = new Archive())
 9            {
10                DirectoryInfo corpus = new DirectoryInfo(dataDir + "CanterburyCorpus");
11                archive.CreateEntries(corpus);
12                archive.Save(zipFile);
13                archive.Save(zipFile2);
14            }
15        }
16    }

Extraction de l’archive de r�pertoire compress�e

�tapes�: Extraction d’une archive de r�pertoire compress�e

  1. Ouvrez le flux de fichiers ZIP � l’aide de FileMode.Open.
  2. Cr�ez une instance de la classe Archive en transmettant le flux du fichier ZIP.
  3. Extrayez le contenu de l’archive compress�e dans un r�pertoire sp�cifi� � l’aide de ExtractToDirectory.
1    // For complete examples and data files, please go to https://github.com/aspose-zip/Aspose.ZIP-for-.NET
2    using (FileStream zipFile = File.Open(dataDir + "CompressDirectory_out.zip", FileMode.Open))
3    {
4        using (var archive = new Archive(zipFile))
5        {
6            archive.ExtractToDirectory(dataDir + "DecompressFolder_out");
7        }
8    }

Compresser les fichiers par informations sur le fichier

�tapes�: Compresser les fichiers par informations de fichier

  1. Ouvrez un flux de fichiers pour le fichier ZIP de sortie � l’aide de FileMode.Create.
  2. Cr�ez des objets FileInfo pour les fichiers que vous souhaitez compresser.
  3. Cr�ez une instance de la classe Archive.
  4. Utilisez la m�thode CreateEntry pour ajouter chaque fichier � l’archive.
  5. Enregistrez l’archive � l’aide de la m�thode Save, avec des options de sauvegarde facultatives telles que la d�finition de l’encodage.
 1    // For complete examples and data files, please go to https://github.com/aspose-zip/Aspose.ZIP-for-.NET
 2    using (FileStream zipFile = File.Open(dataDir + "CompressFilesByFileInfo_out.zip", FileMode.Create))
 3    {
 4        FileInfo fi1 = new FileInfo(dataDir + "alice29.txt");
 5        FileInfo fi2 = new FileInfo(dataDir + "fields.c");
 6
 7        using (var archive = new Archive())
 8        {
 9            archive.CreateEntry("alice29.txt", fi1);
10            archive.CreateEntry("fields.c", fi2);
11            archive.Save(zipFile, new ArchiveSaveOptions() { Encoding = Encoding.ASCII });
12        }
13    }

Extraire les archives avec diff�rentes archives d’entr�e

<a name=“csharp-extract-archives-with-diff�rent-entry” id=“csharp-extract-archives-with-diff�rent-entry”>�tapes�: Extraire les archives avec une entr�e diff�rente Mots de passe

  1. Ouvrez le flux de fichiers ZIP � l’aide de FileMode.Open.
  2. Cr�ez une instance de la classe Archive en transmettant le flux du fichier ZIP.
  3. Extrayez la premi�re entr�e de l’archive, en fournissant un mot de passe sp�cifique pour cette entr�e � l’aide de la m�thode Extract.
  4. Extrayez la deuxi�me entr�e avec un mot de passe diff�rent, en l’enregistrant dans un fichier de sortie distinct.
1    // For complete examples and data files, please go to https://github.com/aspose-zip/Aspose.ZIP-for-.NET
2    using (FileStream zipFile = File.Open(dataDir + "\\different_password.zip", FileMode.Open))
3    {
4        using (Archive archive = new Archive(zipFile))
5        {
6            archive.Entries[0].Extract(dataDir + "alice29_extracted_pass_out.txt", "first_pass");
7            archive.Entries[1].Extract(dataDir + "asyoulik_extracted_pass_out.txt", "second_pass");
8        }
9    }
Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.