Class XarArchive

Class XarArchive

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

Cette classe représente un fichier d’archive xar.

public class XarArchive : IArchive, IDisposable

Héritage

objectXarArchive

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

XarArchive(XarCompressionSettings)

Initialise une nouvelle instance de la classe Aspose.Zip.Xar.XarArchive.

public XarArchive(XarCompressionSettings defaultCompressionSettings = null)

Paramètres

defaultCompressionSettings XarCompressionSettings

Les paramètres de compression par défaut, appliqués à toutes les entrées de l’archive.

Exemples

L'exemple suivant montre comment compresser un fichier.

using (var archive = new XarArchive())
{
    archive.CreateEntry("first.bin", "data.bin");
    archive.Save("archive.xar");
}

XarArchive(Stream, XarLoadOptions)

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

public XarArchive(Stream sourceStream, XarLoadOptions loadOptions = null)

Paramètres

sourceStream Stream

La source de l’archive. Elle doit être accessible par recherche.

loadOptions XarLoadOptions

Les options pour charger l’archive.

Exemples

L'exemple suivant montre comment extraire toutes les entrées dans un répertoire.

using (var archive = new XarArchive(File.OpenRead("archive.xar")))
{
   archive.ExtractToDirectory("C:\\extracted");
}

Remarques

Ce constructeur ne décompresse aucune entrée. Voir la méthode Aspose.Zip.Xar.XarFileEntry.Open pour le déballage.

Exceptions

ArgumentNullException

sourceStream est nul.

ArgumentException

sourceStream n’est pas accessible par recherche.

InvalidDataException

sourceStream n’est pas une archive xar valide.

XarArchive(string, XarLoadOptions)

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

public XarArchive(string path, XarLoadOptions loadOptions = null)

Paramètres

path string

Le chemin vers le fichier d’archive.

loadOptions XarLoadOptions

Les options pour charger l’archive.

Exemples

L'exemple suivant montre comment extraire toutes les entrées dans un répertoire.

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

Remarques

Ce constructeur ne décompresse aucune entrée. Voir la méthode Aspose.Zip.Xar.XarFileEntry.Open pour le déballage.

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 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 comporter moins de 248 caractères, et les noms de fichiers doivent comporter moins de 260 caractères.

NotSupportedException

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

FileNotFoundException

Le fichier est introuvable.

DirectoryNotFoundException

Le chemin spécifié est invalide, comme étant sur un lecteur non mappé.

IOException

Le fichier est déjà ouvert.

InvalidDataException

Le fichier à path n’est pas une archive xar valide.

Propriétés

Entries

Obtient les entrées de type Aspose.Zip.Xar.XarEntry constituant l’archive.

public IEnumerable<xarentry> Entries { get; }

Valeur de la propriété

IEnumerable<XarEntry&gt;

Méthodes

CreateEntries(string, bool, XarCompressionSettings)

Ajoute à l’archive tous les fichiers et répertoires de manière récursive dans le répertoire donné.

public XarArchive CreateEntries(string sourceDirectory, bool includeRootDirectory = true, XarCompressionSettings compressionSettings = null)

Paramètres

sourceDirectory string

Répertoire à compresser.

includeRootDirectory bool

Indique s’il faut inclure le répertoire racine lui-même ou non.

compressionSettings XarCompressionSettings

Les paramètres de compression utilisés pour les éléments Aspose.Zip.Xar.XarEntry ajoutés.

Retourne

XarArchive

Instance d’entrée Xar.

Exemples

using (FileStream xarFile = File.Open("archive.xar", FileMode.Create))
{
    using (var archive = new XarArchive())
    {
        archive.CreateEntries(@"C:\folder", false);
        archive.Save(xarFile);
    }
}

Exceptions

ArgumentNullException

sourceDirectory est nul.

SecurityException

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

ArgumentException

sourceDirectory contient des caractères invalides tels que “, <, >, ou |.

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 comporter moins de 248 caractères, et les noms de fichiers doivent comporter moins de 260 caractères. Le chemin spécifié, le nom de fichier, ou les deux sont trop longs.

IOException

sourceDirectory désigne un fichier, pas un répertoire.

CreateEntries(DirectoryInfo, bool, XarCompressionSettings)

Ajoute à l’archive tous les fichiers et répertoires de manière récursive dans le répertoire donné.

public XarArchive CreateEntries(DirectoryInfo directory, bool includeRootDirectory = true, XarCompressionSettings compressionSettings = null)

Paramètres

directory DirectoryInfo

Répertoire à compresser.

includeRootDirectory bool

Indique s’il faut inclure le répertoire racine lui-même ou non.

compressionSettings XarCompressionSettings

Les paramètres de compression utilisés pour les éléments Aspose.Zip.Xar.XarEntry ajoutés.

Retourne

XarArchive

Instance d’entrée Xar.

Exemples

using (FileStream xarFile = File.Open("archive.xar", FileMode.Create))
{
    using (var archive = new XarArchive())
    {
        archive.CreateEntries(new DirectoryInfo(@"C:\folder"), false);
        archive.Save(xarFile);
    }
}

Exceptions

ArgumentNullException

directory est nul.

SecurityException

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

IOException

directory désigne un fichier, pas un répertoire.

CreateEntry(string, FileInfo, bool, XarCompressionSettings)

Crée une seule entrée dans l’archive.

public XarEntry CreateEntry(string name, FileInfo fileInfo, bool openImmediately = false, XarCompressionSettings compressionSettings = null)

Paramètres

name string

Le nom de l’entrée.

fileInfo FileInfo

Les métadonnées du fichier ou du dossier à compresser.

openImmediately bool

Vrai si le fichier doit être ouvert immédiatement, sinon le fichier sera ouvert lors de l’enregistrement de l’archive.

compressionSettings XarCompressionSettings

Les paramètres de compression utilisés pour l’élément Aspose.Zip.Xar.XarEntry ajouté.

Retourne

XarEntry

Instance d’entrée Xar.

Exemples

FileInfo fileInfo = new FileInfo("data.bin");
using (var archive = new XarArchive())
{
    archive.CreateEntry("test.bin", fileInfo);
    archive.Save("archive.xar");
}

Remarques

Si le fichier est ouvert immédiatement avec le paramètre openImmediately, il sera bloqué jusqu'à ce que l'archive soit disposée.

Exceptions

ArgumentNullException

name est nul.

ArgumentException

name est vide.

ArgumentNullException

fileInfo est nul.

CreateEntry(string, string, bool, XarCompressionSettings)

Crée une seule entrée dans l’archive.

public XarEntry CreateEntry(string name, string sourcePath, bool openImmediately = false, XarCompressionSettings compressionSettings = null)

Paramètres

name string

Le nom de l’entrée.

sourcePath string

Chemin vers le fichier à compresser.

openImmediately bool

Vrai si le fichier doit être ouvert immédiatement, sinon le fichier sera ouvert lors de l’enregistrement de l’archive.

compressionSettings XarCompressionSettings

Les paramètres de compression utilisés pour l’élément Aspose.Zip.Xar.XarEntry ajouté.

Retourne

XarEntry

Instance d’entrée Xar.

Exemples

using (var archive = new XarArchive())
{
    archive.CreateEntry("first.bin", "data.bin");
    archive.Save("archive.xar");
}

Remarques

Le nom de l'entrée est uniquement défini dans le paramètre name. Le nom de fichier fourni dans le paramètre sourcePath n'affecte pas le nom de l'entrée.

Si le fichier est ouvert immédiatement avec le paramètre openImmediately, il sera bloqué jusqu'à ce que l'archive soit disposée.

Exceptions

ArgumentNullException

sourcePath est nul.

SecurityException

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

ArgumentException

Le sourcePath est vide, ne contient que des espaces ou contient des caractères invalides. - ou - Le nom de fichier, en tant que partie de name, dépasse 100 symboles.

UnauthorizedAccessException

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

PathTooLongException

Le sourcePath, 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 comporter moins de 248 caractères, et les noms de fichiers doivent comporter moins de 260 caractères. - ou - name est trop long pour xar.

NotSupportedException

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

InvalidOperationException

Impossible de modifier l’archive xar.

CreateEntry(string, Stream, XarCompressionSettings)

Crée une seule entrée dans l’archive.

public XarEntry CreateEntry(string name, Stream source, XarCompressionSettings compressionSettings = null)

Paramètres

name string

Le nom de l’entrée.

source Stream

Le flux d’entrée pour l’entrée.

compressionSettings XarCompressionSettings

Les paramètres de compression utilisés pour l’élément Aspose.Zip.Xar.XarEntry ajouté.

Retourne

XarEntry

Instance d’entrée Xar.

Exemples

using (var archive = new XarArchive())
{
    archive.CreateEntry("data.bin", File.OpenRead("data.bin"));
    archive.Save("archive.xar");
}

Exceptions

ArgumentNullException

name est nul.

ArgumentNullException

source est nul.

ArgumentException

name est vide.

InvalidOperationException

Impossible de modifier l’archive xar.

DeleteEntry(XarEntry)

Supprime la première occurrence d’une entrée spécifique de la liste des entrées.

public XarArchive DeleteEntry(XarEntry entry)

Paramètres

entry XarEntry

L’entrée à supprimer de la liste des entrées.

Retourne

XarArchive

Instance d’entrée Xar.

Exemples

Voici comment vous pouvez supprimer toutes les entrées sauf la dernière :

using (var archive = new XarArchive("archive.xar"))
{
    while (archive.Entries.Count &gt; 1)
        archive.DeleteEntry(archive.Entries.FirstOrDefault());
    archive.Save(outputXarFile);
}

Exceptions

ArgumentNullException

entry est nul.

Dispose()

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

public void Dispose()

Dispose(bool)

Effectue les tâches définies par l’application associées à la libération, au déchargement 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.

ExtractToDirectory(string)

Extrait tous les fichiers de l’archive dans 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 XarArchive("archive.xar")) 
{
   archive.ExtractToDirectory("C:\\extracted");
}

Remarques

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

Exceptions

ArgumentNullException

path 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 comporter moins de 248 caractères et les noms de fichiers doivent comporter moins de 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

le chemin est une chaîne de longueur zéro, ne contient que des espaces 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 n’est pas connu.

InvalidDataException

L’archive est corrompue.

Save(string, XarSaveOptions)

Sauvegarde l’archive dans le fichier de destination fourni.

public void Save(string destinationFileName, XarSaveOptions saveOptions = null)

Paramètres

destinationFileName string

Le chemin de l’archive à créer. Si le nom de fichier spécifié pointe vers un fichier existant, il sera écrasé.

saveOptions XarSaveOptions

Options pour sauvegarder l’archive xar.

Exceptions

ArgumentNullException

destinationFileName est nul.

InvalidOperationException

Impossible de modifier l’archive xar.

Save(Stream, XarSaveOptions)

Sauvegarde l’archive dans le flux fourni.

public void Save(Stream output, XarSaveOptions saveOptions = null)

Paramètres

output Stream

Flux de destination.

saveOptions XarSaveOptions

Options pour sauvegarder l’archive xar.

Exceptions

ArgumentNullException

output est nul.

ArgumentException

output n’est pas écrivable/lisible ou n’est pas accessible par recherche.

InvalidOperationException

Impossible de modifier l’archive xar.

 Français