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
Implémente
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
sourceStream
est nul.
sourceStream
n’est pas accessible par recherche.
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
path
est nul.
L’appelant n’a pas la permission requise pour accéder.
Le path
est vide, ne contient que des espaces ou contient des caractères invalides.
L’accès au fichier path
est refusé.
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.
Le fichier à path
contient un deux-points (:) au milieu de la chaîne.
Le fichier est introuvable.
Le chemin spécifié est invalide, comme étant sur un lecteur non mappé.
Le fichier est déjà ouvert.
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>
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
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
sourceDirectory
est nul.
L’appelant n’a pas la permission requise pour accéder à sourceDirectory
.
sourceDirectory
contient des caractères invalides tels que “, <, >, ou |.
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.
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
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
directory
est nul.
L’appelant n’a pas la permission requise pour accéder à directory
.
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
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
name
est nul.
name
est vide.
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
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
sourcePath
est nul.
L’appelant n’a pas la permission requise pour accéder.
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.
L’accès au fichier sourcePath
est refusé.
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.
Le fichier à sourcePath
contient un deux-points (:) au milieu de la chaîne.
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
Instance d’entrée Xar.
Exemples
using (var archive = new XarArchive())
{
archive.CreateEntry("data.bin", File.OpenRead("data.bin"));
archive.Save("archive.xar");
}
Exceptions
name
est nul.
source
est nul.
name
est vide.
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
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 > 1)
archive.DeleteEntry(archive.Entries.FirstOrDefault());
archive.Save(outputXarFile);
}
Exceptions
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
path est nul
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.
L’appelant n’a pas la permission requise pour accéder au répertoire existant.
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:").
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 (:).
Le répertoire spécifié par le chemin est un fichier. - ou - Le nom du réseau n’est pas connu.
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
destinationFileName
est nul.
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
output
est nul.
output
n’est pas écrivable/lisible ou n’est pas accessible par recherche.
Impossible de modifier l’archive xar.