Class RarArchive

Class RarArchive

Namespace: Aspose.Zip.Rar
Assembly: Aspose.Zip.dll (25.1.0)

Cette classe représente un fichier d’archive RAR. Utilisez-la pour extraire des archives RAR.

public class RarArchive : IArchive, IDisposable

Héritage

objectRarArchive

Implémente

IArchive, IDisposable

Membres hérités

object.GetType(), object.MemberwiseClone(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()

Constructeurs

RarArchive(string, RarArchiveLoadOptions)

Initialise une nouvelle instance de la classe Aspose.Zip.Rar.RarArchive et compose la liste des entrées pouvant être extraites de l’archive.

public RarArchive(string path, RarArchiveLoadOptions loadOptions = null)

Paramètres

path string

Le chemin complètement qualifié ou le chemin relatif vers le fichier d’archive.

loadOptions RarArchiveLoadOptions

Options pour charger l’archive existante.

Exemples

L'exemple suivant extrait une archive, puis décompresse la première entrée dans un MemoryStream.

var extracted = new MemoryStream();
using (RarArchive archive = new RarArchive("data.rar"))
{
    using (var decompressed = archive.Entries[0].Open())
    {
        byte[] b = new byte[8192];
        int bytesRead;
        while (0 < (bytesRead = decompressed.Read(b, 0, b.Length)))
            extracted.Write(b, 0, bytesRead);
    }
}

Remarques

Ce constructeur ne décompresse aucune entrée. Voir la méthode Aspose.Zip.Rar.RarArchiveEntry.Open(System.String) pour décompresser.

Exceptions

ArgumentNullException

path est nul.

SecurityException

L’appelant n’a pas la permission requise pour accéder.

ArgumentException

Le path est vide, ne contient que des espaces blancs, ou contient des caractères invalides.

UnauthorizedAccessException

L’accès au fichier path est refusé.

PathTooLongException

Le path, le nom du fichier, ou les deux dépassent la longueur maximale définie par le système. Par exemple, sur les plateformes Windows, les chemins doivent être inférieurs à 248 caractères, et les noms de fichiers doivent être inférieurs à 260 caractères.

NotSupportedException

Le fichier à path contient deux-points (:) au milieu de la chaîne.

FileNotFoundException

Le fichier est introuvable.

DirectoryNotFoundException

Le chemin spécifié est invalide, par exemple s’il se trouve sur un lecteur non mappé.

IOException

Le fichier est déjà ouvert.

RarArchive(Stream, RarArchiveLoadOptions)

Initialise une nouvelle instance de la classe Aspose.Zip.Rar.RarArchive et compose la liste des entrées pouvant être extraites de l’archive.

public RarArchive(Stream sourceStream, RarArchiveLoadOptions loadOptions = null)

Paramètres

sourceStream Stream

La source de l’archive.

loadOptions RarArchiveLoadOptions

Options pour charger l’archive existante.

Exemples

L'exemple suivant déchiffre et décompresse la première entrée dans un MemoryStream.

var fs = File.OpenRead("encrypted.rar");
var extracted = new MemoryStream();
using (RarArchive archive = new RarArchive(fs, new RarArchiveLoadOptions() { DecryptionPassword = "p@s$" }))
{
    using (var decompressed = archive.Entries[0].Open())
    {
        byte[] b = new byte[8192];
        int bytesRead;
        while (0 < (bytesRead = decompressed.Read(b, 0, b.Length)))
            extracted.Write(b, 0, bytesRead);
    }
}

Remarques

Ce constructeur ne décompresse aucune entrée. Voir la méthode Aspose.Zip.Rar.RarArchiveEntry.Open(System.String) pour décompresser.

Exceptions

ArgumentException

sourceStream n’est pas seekable.

InvalidDataException

Signature incorrecte pour l’archive. - ou - Le fichier n’est pas une archive RAR.

Propriétés

Entries

Obtient les entrées de type Aspose.Zip.Rar.RarArchiveEntry constituant l’archive rar.

public ReadOnlyCollection<rararchiveentry> Entries { get; }

Valeur de la propriété

ReadOnlyCollection<RarArchiveEntry&gt;

Méthodes

Dispose(bool)

Effectue des tâches définies par l’application associées à la libération, la libération ou la réinitialisation des ressources non gérées.

protected virtual void Dispose(bool disposing)

Paramètres

disposing bool

Indique si les ressources gérées doivent être libérées.

Dispose()

Effectue des tâches définies par l’application associées à la libération, la libération ou la réinitialisation des ressources non gérées.

public void Dispose()

ExtractToDirectory(string, string)

Extrait tous les fichiers de l’archive vers le répertoire fourni.

[Obsolete("Pour l'extraction d'une archive RAR chiffrée, veuillez fournir le mot de passe dans le constructeur avec Aspose.Zip.Rar.RarArchiveLoadOptions.DecryptionPassword")]
public void ExtractToDirectory(string destinationDirectory, string password = null)

Paramètres

destinationDirectory string

Le chemin vers le répertoire où placer les fichiers extraits.

password string

Mot de passe optionnel pour le déchiffrement.

Exemples

using (var archive = new RarArchive("archive.rar")) 
{ 
   archive.ExtractToDirectory("C:\extracted", "$ecRet");
}

Remarques

Si le répertoire n’existe pas, il sera créé.

Exceptions

ArgumentNullException

destinationDirectory est nul.

PathTooLongException

Le chemin spécifié, le nom de fichier, ou les deux dépassent la longueur maximale définie par le système. Par exemple, sur les plateformes Windows, les chemins doivent être inférieurs à 248 caractères et les noms de fichiers doivent être inférieurs à 260 caractères.

SecurityException

L’appelant n’a pas la permission requise pour accéder au répertoire existant.

NotSupportedException

Si le répertoire n’existe pas, le chemin contient un caractère deux-points (:) qui ne fait pas partie d’une étiquette de lecteur (“C:").

ArgumentException

destinationDirectory est une chaîne de longueur zéro, ne contient que des espaces blancs, ou contient un ou plusieurs caractères invalides. Vous pouvez interroger les caractères invalides en utilisant la méthode System.IO.Path.GetInvalidPathChars. - ou - le chemin est préfixé par, ou contient, uniquement un caractère deux-points (:).

IOException

Le répertoire spécifié par le chemin est un fichier. - ou - Le nom du réseau est inconnu.

ExtractToDirectory(string)

Extrait tous les fichiers de l’archive vers le répertoire fourni.

public void ExtractToDirectory(string destinationDirectory)

Paramètres

destinationDirectory string

Le chemin vers le répertoire où placer les fichiers extraits.

Exemples

using (var archive = new RarArchive("archive.rar")) 
{ 
   archive.ExtractToDirectory("C:\extracted");
}

Remarques

Si le répertoire n’existe pas, il sera créé.

Exceptions

ArgumentNullException

destinationDirectory est nul.

PathTooLongException

Le chemin spécifié, le nom de fichier, ou les deux dépassent la longueur maximale définie par le système. Par exemple, sur les plateformes Windows, les chemins doivent être inférieurs à 248 caractères et les noms de fichiers doivent être inférieurs à 260 caractères.

SecurityException

L’appelant n’a pas la permission requise pour accéder au répertoire existant.

NotSupportedException

Si le répertoire n’existe pas, le chemin contient un caractère deux-points (:) qui ne fait pas partie d’une étiquette de lecteur (“C:").

ArgumentException

destinationDirectory est une chaîne de longueur zéro, ne contient que des espaces blancs, ou contient un ou plusieurs caractères invalides. Vous pouvez interroger les caractères invalides en utilisant la méthode System.IO.Path.GetInvalidPathChars. - ou - le chemin est préfixé par, ou contient, uniquement un caractère deux-points (:).

IOException

Le répertoire spécifié par le chemin est un fichier. - ou - Le nom du réseau est inconnu.

 Français