Class Bzip2Archive

Class Bzip2Archive

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

Diese Klasse repräsentiert eine bzip2-Archivdatei. Verwenden Sie sie, um bzip2-Archive zu erstellen oder zu extrahieren.

public class Bzip2Archive : IArchive, IDisposable, IArchiveFileEntry

Vererbung

objectBzip2Archive

Implementiert

IArchive, IDisposable, IArchiveFileEntry

Vererbte Mitglieder

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

Bemerkungen

bzip2 komprimiert Dateien mit dem Burrows-Wheeler-Blocksortieralgorithmus zur Textkompression und Huffman-Codierung. Weitere Informationen: https://de.wikipedia.org/wiki/Bzip2

Konstruktoren

Bzip2Archive()

Initialisiert eine neue Instanz der Aspose.Zip.Bzip2.Bzip2Archive-Klasse, die für die Komprimierung vorbereitet ist.

public Bzip2Archive()

Beispiele

Das folgende Beispiel zeigt, wie man eine Datei komprimiert.

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

Bzip2Archive(Stream, Bzip2LoadOptions)

Initialisiert eine neue Instanz der Aspose.Zip.Bzip2.Bzip2Archive-Klasse, die für die Dekomprimierung vorbereitet ist.

public Bzip2Archive(Stream sourceStream, Bzip2LoadOptions loadOptions = null)

Parameter

sourceStream Stream

Die Quelle des Archivs.

loadOptions Bzip2LoadOptions

Die Optionen zum Laden des Archivs.

Beispiele

Öffnen Sie ein Archiv aus einem Stream und extrahieren Sie es in einen MemoryStream

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

Bemerkungen

Dieser Konstruktor führt keine Dekomprimierung durch. Siehe die Methode Aspose.Zip.Bzip2.Bzip2Archive.Open zur Dekomprimierung.

Bzip2Archive(string, Bzip2LoadOptions)

Initialisiert eine neue Instanz der Aspose.Zip.Bzip2.Bzip2Archive-Klasse, die für die Dekomprimierung vorbereitet ist.

public Bzip2Archive(string path, Bzip2LoadOptions loadOptions = null)

Parameter

path string

Der Pfad zur Archivdatei.

loadOptions Bzip2LoadOptions

Die Optionen zum Laden des Archivs.

Beispiele

Öffnen Sie ein Archiv aus einer Datei über den Pfad und extrahieren Sie es in einen MemoryStream

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

Bemerkungen

Dieser Konstruktor führt keine Dekomprimierung durch. Siehe die Methode Aspose.Zip.Bzip2.Bzip2Archive.Open zur Dekomprimierung.

Ausnahmen

ArgumentNullException

path ist null.

SecurityException

Der Aufrufer hat nicht die erforderliche Berechtigung zum Zugriff.

ArgumentException

Der path ist leer, enthält nur Leerzeichen oder ungültige Zeichen.

UnauthorizedAccessException

Der Zugriff auf die Datei path ist verweigert.

PathTooLongException

Der angegebene path, Dateiname oder beides überschreiten die vom System definiierte maximale Länge. Beispielsweise müssen unter Windows-basierte Plattformen die Pfade weniger als 248 Zeichen und die Dateinamen weniger als 260 Zeichen lang sein.

NotSupportedException

Die Datei unter path enthält einen Doppelpunkt (:) in der Mitte des Strings.

FileNotFoundException

Die Datei wurde nicht gefunden.

DirectoryNotFoundException

Der angegebene Pfad ist ungültig, beispielsweise weil er sich auf einem nicht zugeordneten Laufwerk befindet.

IOException

Die Datei ist bereits geöffnet.

Methoden

Dispose()

Führt anwendungsspezifische Aufgaben aus, die mit dem Freigeben, Zurücksetzen oder Freigeben nicht verwalteter Ressourcen verbunden sind.

public void Dispose()

Dispose(bool)

Führt anwendungsspezifische Aufgaben aus, die mit dem Freigeben, Zurücksetzen oder Freigeben nicht verwalteter Ressourcen verbunden sind.

protected virtual void Dispose(bool disposing)

Parameter

disposing bool

Ob verwaltete Ressourcen freigegeben werden sollen.

Extract(Stream)

Extrahiert das Archiv in den angegebenen Stream.

public void Extract(Stream destination)

Parameter

destination Stream

Zielstream. Muss beschreibbar sein.

Beispiele

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

Ausnahmen

ArgumentException

destination unterstützt das Schreiben nicht.

Extract(string)

Extrahiert das Archiv in die Datei über den Pfad.

public FileInfo Extract(string path)

Parameter

path string

Der Pfad zur Zieldatei. Wenn die Datei bereits existiert, wird sie überschrieben.

Rückgabewert

FileInfo

Informationen zur extrahierten Datei.

Ausnahmen

ArgumentNullException

path ist null.

SecurityException

Der Aufrufer hat nicht die erforderliche Berechtigung zum Zugriff.

ArgumentException

Der path ist leer, enthält nur Leerzeichen oder ungültige Zeichen.

UnauthorizedAccessException

Der Zugriff auf die Datei path ist verweigert.

PathTooLongException

Der angegebene path, Dateiname oder beides überschreiten die vom System definiierte maximale Länge. Beispielsweise müssen unter Windows-basierte Plattformen die Pfade weniger als 248 Zeichen und die Dateinamen weniger als 260 Zeichen lang sein.

NotSupportedException

Die Datei unter path enthält einen Doppelpunkt (:) in der Mitte des Strings.

FileNotFoundException

Die Datei wurde nicht gefunden.

DirectoryNotFoundException

Der angegebene Pfad ist ungültig, beispielsweise weil er sich auf einem nicht zugeordneten Laufwerk befindet.

IOException

Die Datei ist bereits geöffnet.

ExtractToDirectory(string)

Extrahiert den Inhalt des Archivs in das angegebene Verzeichnis.

public void ExtractToDirectory(string destinationDirectory)

Parameter

destinationDirectory string

Der Pfad zum Verzeichnis, in das die extrahierten Dateien gelegt werden sollen.

Bemerkungen

Wenn das Verzeichnis nicht existiert, wird es erstellt.

Ausnahmen

ArgumentNullException

destinationDirectory ist null.

PathTooLongException

Der angegebene Pfad, Dateiname oder beides überschreiten die vom System definierten maximalen Länge. Beispielsweise müssen unter Windows-basierte Plattformen die Pfade weniger als 248 Zeichen und die Dateinamen weniger als 260 Zeichen lang sein.

SecurityException

Der Aufrufer hat nicht die erforderliche Berechtigung zum Zugriff auf das vorhandene Verzeichnis.

NotSupportedException

Wenn das Verzeichnis nicht existiert, enthält der Pfad ein Doppelpunktzeichen (:) das kein Teil eines Laufwerksbezeichners (“C:") ist.

ArgumentException

destinationDirectory ist eine Nullzeichenfolge, enthält nur Leerzeichen oder enthält ein oder mehrere ungültige Zeichen. Sie können ungültige Zeichen mit der Methode System.IO.Path.GetInvalidPathChars abfragen. -oder- Der Pfad ist mit einem Doppelpunktzeichen (:) vorangestellt oder enthält nur ein Doppelpunktzeichen.

IOException

Das Verzeichnis, das durch den Pfad angegeben wird, ist eine Datei. -oder- Der Netzwerkname ist unbekannt.

Open()

Öffnet das Archiv zur Extraktion und stellt einen Stream mit dem Archivinhalt bereit.

public Stream Open()

Rückgabewert

Stream

Der Stream, der den Inhalt des Archivs darstellt.

Beispiele

Verwendung: Stream decompressed = archive.Open();

.NET 4.0 und höher - verwenden Sie die Methode Stream.CopyTo: decompressed.CopyTo(httpResponse.OutputStream)

.NET 3.5 und früher - Bytes manuell kopieren:

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

#### Bemerkungen

Lesen Sie aus dem Stream, um den ursprünglichen Inhalt der Datei zu erhalten. Siehe Abschnitt Beispiele.

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

Speichert das Archiv im angegebenen Stream.

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

Parameter

outputStream Stream

Zielstream.

saveOptions Bzip2SaveOptions

Optionen zum Speichern eines bzip2-Archivs. Wenn nicht angegeben, wird eine Blockgröße von 900 Kb verwendet.

Beispiele

Schreibt komprimierte Daten in den HTTP-Antwortstream.

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

Bemerkungen

outputStream muss beschreibbar sein.

Ausnahmen

InvalidOperationException

Die Quelle der zu archivierender Daten wurde nicht bereitgestellt.

ArgumentException

outputStream ist nicht beschreibbar.

UnauthorizedAccessException

Die Datenquelle ist schreibgeschützt oder ein Verzeichnis.

DirectoryNotFoundException

Der angegebene Dateiquellenpfad ist ungültig, beispielsweise weil er sich auf einem nicht zugeordneten Laufwerk befindet.

IOException

Die Datenquelle ist bereits geöffnet.

Save(string, Bzip2SaveOptions)

Speichert das Archiv in der angegebenen Zieldatei.

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

Parameter

destinationFileName string

Der Pfad des zu erstellenden Archivs. Wenn der angegebene Dateiname auf eine vorhandene Datei verweist, wird sie überschrieben.

saveOptions Bzip2SaveOptions

Optionen zum Speichern eines bzip2-Archivs. Wenn nicht angegeben, wird eine Blockgröße von 900 Kb verwendet.

Beispiele

Schreibt komprimierte Daten in eine Datei.

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

Ausnahmen

ArgumentNullException

destinationFileName ist null.

SecurityException

Der Aufrufer hat nicht die erforderliche Berechtigung zum Zugriff.

ArgumentException

Der destinationFileName ist leer, enthält nur Leerzeichen oder ungültige Zeichen.

UnauthorizedAccessException

Der Zugriff auf die Datei destinationFileName ist verweigert.

PathTooLongException

Der angegebene destinationFileName, Dateiname oder beides überschreiten die vom System definierten maximalen Länge. Beispielsweise müssen unter Windows-basierte Plattformen die Pfade weniger als 248 Zeichen und die Dateinamen weniger als 260 Zeichen lang sein.

NotSupportedException

Die Datei unter destinationFileName enthält einen Doppelpunkt (:) in der Mitte des Strings.

SetSource(Stream)

Setzt den Inhalt, der im Archiv komprimiert werden soll.

public void SetSource(Stream source)

Parameter

source Stream

Der Eingabestream für das Archiv.

Beispiele

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

SetSource(FileInfo)

Setzt den Inhalt, der im Archiv komprimiert werden soll.

public void SetSource(FileInfo fileInfo)

Parameter

fileInfo FileInfo

Die Referenz auf eine Datei, die komprimiert werden soll.

Beispiele

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

SetSource(string)

Setzt den Inhalt, der im Archiv komprimiert werden soll.

public void SetSource(string path)

Parameter

path string

Pfad zur Datei, die komprimiert werden soll.

Beispiele

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

Ausnahmen

ArgumentNullException

path ist null.

SecurityException

Der Aufrufer hat nicht die erforderliche Berechtigung zum Zugriff.

ArgumentException

Der path ist leer, enthält nur Leerzeichen oder ungültige Zeichen.

UnauthorizedAccessException

Der Zugriff auf die Datei path ist verweigert.

PathTooLongException

Der angegebene path, Dateiname oder beides überschreiten die vom System definierten maximalen Länge. Beispielsweise müssen unter Windows-basierte Plattformen die Pfade weniger als 248 Zeichen und die Dateinamen weniger als 260 Zeichen lang sein.

NotSupportedException

Die Datei unter path enthält einen Doppelpunkt (:) in der Mitte des Strings.

SetSource(TarArchive, TarFormat)

Setzt den Inhalt, der im Archiv komprimiert werden soll.

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

Parameter

tarArchive TarArchive

Tar-Archiv, das komprimiert werden soll.

format TarFormat

Definiert das Format des Tar-Headers.

Beispiele

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");
    }
}

Bemerkungen

Verwenden Sie diese Methode, um ein gemeinsames tar.bz2-Archiv zu erstellen.

SetSource(CpioArchive, CpioFormat)

Setzt den Inhalt, der im Archiv komprimiert werden soll.

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

Parameter

cpioArchive CpioArchive

Cpio-Archiv, das komprimiert werden soll.

format CpioFormat

Definiert das Format des Cpio-Headers.

Beispiele

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");
    }
}

Bemerkungen

Verwenden Sie diese Methode, um ein gemeinsames cpio.bz2-Archiv zu erstellen.

 Deutsch