Class Bzip2Archive

Class Bzip2Archive

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

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

public class Bzip2Archive : IArchive, IDisposable, IArchiveFileEntry

Héritage

objectBzip2Archive

Implémente

IArchive, IDisposable, IArchiveFileEntry

Membres hérités

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

Remarques

bzip2 compresse les fichiers en utilisant l’algorithme de compression de texte par tri de blocs de Burrows-Wheeler et le codage de Huffman. Voir plus : https://fr.wikipedia.org/wiki/Bzip2

Constructeurs

Bzip2Archive()

Initialise une nouvelle instance de la classe Aspose.Zip.Bzip2.Bzip2Archive préparée pour la compression.

public Bzip2Archive()

Exemples

L'exemple suivant montre comment compresser un fichier.

using (Bzip2Archive archive = new Bzip2Archive()) 
{
    archive.SetSource("data.bin");
    archive.Save("archive.bz2");
}

Bzip2Archive(Stream, Bzip2LoadOptions)

Initialise une nouvelle instance de la classe Aspose.Zip.Bzip2.Bzip2Archive préparée pour la décompression.

public Bzip2Archive(Stream sourceStream, Bzip2LoadOptions loadOptions = null)

Paramètres

sourceStream Stream

La source de l’archive.

loadOptions Bzip2LoadOptions

Les options pour charger l’archive.

Exemples

Ouvrir une archive à partir d'un flux et l'extraire dans un MemoryStream

var ms = new MemoryStream();
using (Bzip2Archive archive = new Bzip2Archive(File.OpenRead("archive.bz2")))
  archive.Open().CopyTo(ms);

Remarques

Ce constructeur ne décompresse pas. Voir la méthode Aspose.Zip.Bzip2.Bzip2Archive.Open pour décompresser.

Bzip2Archive(string, Bzip2LoadOptions)

Initialise une nouvelle instance de la classe Aspose.Zip.Bzip2.Bzip2Archive préparée pour la décompression.

public Bzip2Archive(string path, Bzip2LoadOptions loadOptions = null)

Paramètres

path string

Le chemin vers le fichier d’archive.

loadOptions Bzip2LoadOptions

Les options pour charger l’archive.

Exemples

Ouvrir une archive à partir d'un fichier par chemin et l'extraire dans un MemoryStream

var ms = new MemoryStream();
using (Bzip2Archive archive = new Bzip2Archive("archive.bz2"))
  archive.Open().CopyTo(ms);

Remarques

Ce constructeur ne décompresse pas. Voir la méthode Aspose.Zip.Bzip2.Bzip2Archive.Open 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 vides, ou contient des caractères invalides.

UnauthorizedAccessException

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

PathTooLongException

Le path, 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 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, par exemple s’il se trouve sur un lecteur non mappé.

IOException

Le fichier est déjà ouvert.

Méthodes

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()

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.

Extract(Stream)

Extrait l’archive vers le flux fourni.

public void Extract(Stream destination)

Paramètres

destination Stream

Flux de destination. Doit être écrivable.

Exemples

using (Bzip2Archive archive = new Bzip2Archive("archive.bz2"))
{
     archive.Extract(httpResponseStream);
}

Exceptions

ArgumentException

destination ne prend pas en charge l’écriture.

Extract(string)

Extrait l’archive vers le fichier par chemin.

public FileInfo Extract(string path)

Paramètres

path string

Le chemin vers le fichier de destination. Si le fichier existe déjà, il sera écrasé.

Retourne

FileInfo

Info du fichier extrait.

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 vides, ou contient des caractères invalides.

UnauthorizedAccessException

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

PathTooLongException

Le path, 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 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, par exemple s’il se trouve sur un lecteur non mappé.

IOException

Le fichier est déjà ouvert.

ExtractToDirectory(string)

Extrait le contenu 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.

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

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

Open()

Ouvre l’archive pour extraction et fournit un flux avec le contenu de l’archive.

public Stream Open()

Retourne

Stream

Le flux qui représente le contenu de l’archive.

Exemples

Utilisation : Stream decompressed = archive.Open();

.NET 4.0 et supérieur - utilisez la méthode Stream.CopyTo : decompressed.CopyTo(httpResponse.OutputStream)

.NET 3.5 et avant - copiez les octets manuellement :

byte[] buffer = new byte[8192];
int bytesRead;
while (0 < (bytesRead = decompressed.Read(buffer, 0, buffer.Length)))
 fileStream.Write(buffer, 0, bytesRead);
```</p>

#### Remarques

Lisez à partir du flux pour obtenir le contenu original du fichier. Voir la section des exemples.

### <a id="Aspose_Zip_Bzip2_Bzip2Archive_Save_System_IO_Stream_Aspose_Zip_Bzip2_Bzip2SaveOptions_"></a> Save\(Stream, Bzip2SaveOptions\)

Enregistre l'archive dans le flux fourni.

```csharp
public void Save(Stream outputStream, Bzip2SaveOptions saveOptions = null)

Paramètres

outputStream Stream

Flux de destination.

saveOptions Bzip2SaveOptions

Options pour enregistrer une archive bzip2. Si non spécifié, une taille de bloc de 900 Ko sera utilisée.

Exemples

Écrit les données compressées dans le flux de réponse http.

using (var archive = new Bzip2Archive()) 
{
    archive.SetSource(new FileInfo("data.bin"));
    archive.Save(httpResponse.OutputStream);
}

Remarques

outputStream doit être écrivable.

Exceptions

InvalidOperationException

La source des données à archiver n’a pas été fournie.

ArgumentException

outputStream n’est pas écrivable.

UnauthorizedAccessException

La source de fichier est en lecture seule ou est un répertoire.

DirectoryNotFoundException

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

IOException

La source de fichier est déjà ouverte.

Save(string, Bzip2SaveOptions)

Enregistre l’archive dans le fichier de destination fourni.

public void Save(string destinationFileName, Bzip2SaveOptions 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 Bzip2SaveOptions

Options pour enregistrer une archive bzip2. Si non spécifié, une taille de bloc de 900 Ko sera utilisée.

Exemples

Écrit les données compressées dans un fichier.

using (var archive = new Bzip2Archive()) 
{
    archive.SetSource(new FileInfo("data.bin"));
    archive.Save("data.bz2");
}

Exceptions

ArgumentNullException

destinationFileName est nul.

SecurityException

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

ArgumentException

Le destinationFileName est vide, ne contient que des espaces vides, ou contient des caractères invalides.

UnauthorizedAccessException

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

PathTooLongException

Le destinationFileName, 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 moins de 260 caractères.

NotSupportedException

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

SetSource(Stream)

Définit le contenu à compresser dans l’archive.

public void SetSource(Stream source)

Paramètres

source Stream

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

Exemples

using (Bzip2Archive archive = new Bzip2Archive()) 
{
    archive.SetSource(new MemoryStream(new byte[] { 0x00,0xFF }));
    archive.Save("archive.bz2");
}

SetSource(FileInfo)

Définit le contenu à compresser dans l’archive.

public void SetSource(FileInfo fileInfo)

Paramètres

fileInfo FileInfo

La référence à un fichier à compresser.

Exemples

using (Bzip2Archive archive = new Bzip2Archive()) 
{
    archive.SetSource(new FileInfo("data.bin"));
    archive.Save("archive.bz2");
}

SetSource(string)

Définit le contenu à compresser dans l’archive.

public void SetSource(string path)

Paramètres

path string

Chemin vers le fichier à compresser.

Exemples

using (Bzip2Archive archive = new Bzip2Archive()) 
{
    archive.SetSource("data.bin");
    archive.Save("archive.bz2");
}

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 vides, ou contient des caractères invalides.

UnauthorizedAccessException

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

PathTooLongException

Le path, 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 moins de 260 caractères.

NotSupportedException

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

SetSource(TarArchive, TarFormat)

Définit le contenu à compresser dans l’archive.

public void SetSource(TarArchive tarArchive, TarFormat format = TarFormat.UsTar)

Paramètres

tarArchive TarArchive

Archive Tar à compresser.

format TarFormat

Définit le format d’en-tête Tar.

Exemples

using (var tarArchive = new TarArchive())
{
    tarArchive.CreateEntry("first.bin", "data1.bin");
    tarArchive.CreateEntry("second.bin", "data2.bin");
    using (var bzippedArchive = new Bzip2Archive())
    {
        bzippedArchive.SetSource(tarArchive);
        bzippedArchive.Save("archive.tar.bz2");
    }
}

Remarques

Utilisez cette méthode pour composer une archive tar.bz2 conjointe.

SetSource(CpioArchive, CpioFormat)

Définit le contenu à compresser dans l’archive.

public void SetSource(CpioArchive cpioArchive, CpioFormat format = CpioFormat.OldAscii)

Paramètres

cpioArchive CpioArchive

Archive Cpio à compresser.

format CpioFormat

Définit le format d’en-tête Cpio.

Exemples

using (var cpioArchive = new CpioArchive())
{
    cpioArchive.CreateEntry("first.bin", "data1.bin");
    cpioArchive.CreateEntry("second.bin", "data2.bin");
    using (var bzippedArchive = new Bzip2Archive())
    {
        bzippedArchive.SetSource(cpioArchive);
        bzippedArchive.Save("archive.cpio.bz2");
    }
}

Remarques

Utilisez cette méthode pour composer une archive cpio.bz2 conjointe.

 Français