Extraction des archives RAR dans .NET
Aperçu
L’API Aspose.ZIP permet d’extraire des archives dans vos applications sans avoir besoin d’autres applications tierces. L’ API Aspose.ZIP fournit la classe RarArchive pour travailler avec les archives RAR. L’API fournit la classe RarArchiveEntry pour représenter un seul fichier dans l’archive RAR.
La création d’archives RAR n’est pas possible.
Extraire une entrée
L’exemple de code suivant montre comment extraire une entrée à l’aide de l’instance RarArchive.
Étapes : Extraire une entrée d’une archive RAR via C#
- Ouvrez l’archive RAR à l’aide de l’instance RarArchive.
- Créez un nouveau flux de fichiers pour l’entrée extraite.
- Utilisez la méthode Open sur la première entrée pour récupérer son contenu.
- Utilisez un tampon pour lire les données de l’entrée et écrivez-les dans le flux du fichier de destination jusqu’à ce que tous les octets soient transférés.
1 using (RarArchive archive = new RarArchive("archive.rar"))
2 {
3 using (var destination = File.Create(dataDir + "firstEntry.txt"))
4 {
5 using (var source = archive.Entries[0].Open())
6 {
7 byte[] buffer = new byte[1024];
8 int bytesRead;
9 while ((bytesRead = source.Read(buffer, 0, buffer.Length)) > 0)
10 destination.Write(buffer, 0, bytesRead);
11
12 }
13 }
14 }
Extraire une entrée cryptée
L’exemple de code suivant montre comment extraire une entrée chiffrée à l’aide de l’instance RarArchive.
Étapes : Extraire une entrée cryptée à partir d’une archive RAR via C#
- Stylo l’archive RAR cryptée à l’aide d’un objet FileInfo.
- Créez un flux de fichiers pour l’entrée extraite.
- Utilisez la méthode Extract sur la première entrée, en fournissant le mot de passe requis pour la déchiffrer.
- Écrivez les données décryptées dans le fichier de destination.
1 FileInfo fi = new FileInfo("encrypted.rar");
2 using (RarArchive archive = new RarArchive(fi.OpenRead()))
3 {
4 using (var destination = File.Create(dataDir + "firstEntry.txt"))
5 {
6 archive.Entries[0].Extract(destination, "p@s$w0rd");
7 }
8 }
Extraction du répertoire compressé
L’exemple de code suivant montre comment récupérer tous les fichiers de l’instance RarArchive.
Étapes : Extraire tous les fichiers d’un Répertoire compressé (archive RAR) via C#
- Ouvrez l’archive RAR à l’aide de l’instance RarArchive.
- Utilisez la méthode ExtractToDirectory pour extraire tous les fichiers de l’archive vers le répertoire spécifié.
1 using (RarArchive archive = new RarArchive("archive.rar"))
2 {
3 archive.ExtractToDirectory("extracted");
4 }