Class Bzip2Archive

Class Bzip2Archive

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

Ta klasa reprezentuje plik archiwum bzip2. Użyj jej do kompresji lub dekompresji archiwów bzip2.

public class Bzip2Archive : IArchive, IDisposable, IArchiveFileEntry

Dziedziczenie

objectBzip2Archive

Implementuje

IArchive, IDisposable, IArchiveFileEntry

Członkowie dziedziczeni

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

Uwagi

bzip2 kompresuje pliki za pomocą algorytmu kompresji tekstu Burrows-Wheeler oraz kodowania Huffmana. Zobacz więcej: https://en.wikipedia.org/wiki/Bzip2

Konstruktory

Bzip2Archive()

Inicjalizuje nową instancję klasy Aspose.Zip.Bzip2.Bzip2Archive przygotowaną do kompresji.

public Bzip2Archive()

Przykłady

Poniższy przykład pokazuje, jak skompresować plik.

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

Bzip2Archive(Stream, Bzip2LoadOptions)

Inicjalizuje nową instancję klasy Aspose.Zip.Bzip2.Bzip2Archive przygotowaną do dekompresji.

public Bzip2Archive(Stream sourceStream, Bzip2LoadOptions loadOptions = null)

Parametry

sourceStream Stream

Źródło archiwum.

loadOptions Bzip2LoadOptions

Opcje do załadowania archiwum.

Przykłady

Otwórz archiwum z strumienia i wyodrębnij je do MemoryStream

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

Uwagi

Ten konstruktor nie dekompresuje. Zobacz metodę Aspose.Zip.Bzip2.Bzip2Archive.Open, aby dekompresować.

Bzip2Archive(string, Bzip2LoadOptions)

Inicjalizuje nową instancję klasy Aspose.Zip.Bzip2.Bzip2Archive przygotowaną do dekompresji.

public Bzip2Archive(string path, Bzip2LoadOptions loadOptions = null)

Parametry

path string

Ścieżka do pliku archiwum.

loadOptions Bzip2LoadOptions

Opcje do załadowania archiwum.

Przykłady

Otwórz archiwum z pliku według ścieżki i wyodrębnij je do MemoryStream

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

Uwagi

Ten konstruktor nie dekompresuje. Zobacz metodę Aspose.Zip.Bzip2.Bzip2Archive.Open, aby dekompresować.

Wyjątki

ArgumentNullException

path jest null.

SecurityException

Wywołujący nie ma wymaganych uprawnień do dostępu.

ArgumentException

path jest pusty, zawiera tylko białe znaki lub zawiera nieprawidłowe znaki.

UnauthorizedAccessException

Dostęp do pliku path jest zabroniony.

PathTooLongException

Podana path, nazwa pliku lub obie przekraczają maksymalną długość zdefiniowaną przez system. Na przykład na platformach opartych na systemie Windows, ścieżki muszą mieć mniej niż 248 znaków, a nazwy plików muszą mieć mniej niż 260 znaków.

NotSupportedException

Plik na path zawiera dwukropek (:) w środku ciągu.

FileNotFoundException

Plik nie został znaleziony.

DirectoryNotFoundException

Podana ścieżka jest nieprawidłowa, na przykład znajduje się na nieprzypisanym dysku.

IOException

Plik jest już otwarty.

Metody

Dispose()

Wykonuje zadania zdefiniowane przez aplikację związane z zwalnianiem, uwalnianiem lub resetowaniem niezarządzanych zasobów.

public void Dispose()

Dispose(bool)

Wykonuje zadania zdefiniowane przez aplikację związane z zwalnianiem, uwalnianiem lub resetowaniem niezarządzanych zasobów.

protected virtual void Dispose(bool disposing)

Parametry

disposing bool

Czy zarządzane zasoby powinny być zwalniane.

Extract(Stream)

Wyodrębnia archiwum do podanego strumienia.

public void Extract(Stream destination)

Parametry

destination Stream

Strumień docelowy. Musi być zapisywalny.

Przykłady

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

Wyjątki

ArgumentException

destination nie obsługuje zapisu.

Extract(string)

Wyodrębnia archiwum do pliku według ścieżki.

public FileInfo Extract(string path)

Parametry

path string

Ścieżka do pliku docelowego. Jeśli plik już istnieje, zostanie nadpisany.

Zwraca

FileInfo

Informacje o wyodrębnionym pliku.

Wyjątki

ArgumentNullException

path jest null.

SecurityException

Wywołujący nie ma wymaganych uprawnień do dostępu.

ArgumentException

path jest pusty, zawiera tylko białe znaki lub zawiera nieprawidłowe znaki.

UnauthorizedAccessException

Dostęp do pliku path jest zabroniony.

PathTooLongException

Podana path, nazwa pliku, lub obie przekraczają maksymalną długość zdefiniowaną przez system. Na przykład na platformach opartych na systemie Windows, ścieżki muszą mieć mniej niż 248 znaków, a nazwy plików muszą mieć mniej niż 260 znaków.

NotSupportedException

Plik na path zawiera dwukropek (:) w środku ciągu.

FileNotFoundException

Plik nie został znaleziony.

DirectoryNotFoundException

Podana ścieżka jest nieprawidłowa, na przykład znajduje się na nieprzypisanym dysku.

IOException

Plik jest już otwarty.

ExtractToDirectory(string)

Wyodrębnia zawartość archiwum do podanego katalogu.

public void ExtractToDirectory(string destinationDirectory)

Parametry

destinationDirectory string

Ścieżka do katalogu, w którym umieszczone zostaną wyodrębnione pliki.

Uwagi

Jeśli katalog nie istnieje, zostanie utworzony.

Wyjątki

ArgumentNullException

destinationDirectory jest null.

PathTooLongException

Podana ścieżka, nazwa pliku lub obie przekraczają maksymalną długość zdefiniowaną przez system. Na przykład na platformach opartych na systemie Windows, ścieżki muszą mieć mniej niż 248 znaków, a nazwy plików muszą mieć mniej niż 260 znaków.

SecurityException

Wywołujący nie ma wymaganych uprawnień do dostępu do istniejącego katalogu.

NotSupportedException

Jeśli katalog nie istnieje, ścieżka zawiera znak dwukropka (:) który nie jest częścią etykiety dysku (“C:").

ArgumentException

destinationDirectory jest ciągiem o zerowej długości, zawiera tylko białe znaki lub zawiera jeden lub więcej nieprawidłowych znaków. Możesz zapytać o nieprawidłowe znaki, używając metody System.IO.Path.GetInvalidPathChars. -lub- ścieżka jest prefiksowana lub zawiera tylko znak dwukropka (:).

IOException

Katalog określony przez ścieżkę jest plikiem. -lub- Nazwa sieci nie jest znana.

Open()

Otwiera archiwum do dekompresji i udostępnia strumień z zawartością archiwum.

public Stream Open()

Zwraca

Stream

Strumień reprezentujący zawartość archiwum.

Przykłady

Użycie: Stream decompressed = archive.Open();

.NET 4.0 i wyższe - użyj metody Stream.CopyTo: decompressed.CopyTo(httpResponse.OutputStream)

.NET 3.5 i wcześniejsze - kopiuj bajty ręcznie:

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

#### Uwagi

Odczytaj ze strumienia, aby uzyskać oryginalną zawartość pliku. Zobacz sekcję przykładów.

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

Zapisuje archiwum do podanego strumienia.

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

Parametry

outputStream Stream

Strumień docelowy.

saveOptions Bzip2SaveOptions

Opcje do zapisywania archiwum bzip2. Jeśli nie określono, używany będzie rozmiar bloku 900 Kb.

Przykłady

Pisze skompresowane dane do strumienia odpowiedzi http.

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

Uwagi

outputStream musi być zapisywalny.

Wyjątki

InvalidOperationException

Źródło danych do archiwizacji nie zostało podane.

ArgumentException

outputStream nie jest zapisywalny.

UnauthorizedAccessException

Źródło pliku jest tylko do odczytu lub jest katalogiem.

DirectoryNotFoundException

Podana ścieżka źródła pliku jest nieprawidłowa, na przykład znajduje się na nieprzypisanym dysku.

IOException

Źródło pliku jest już otwarte.

Save(string, Bzip2SaveOptions)

Zapisuje archiwum do podanego pliku docelowego.

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

Parametry

destinationFileName string

Ścieżka archiwum, które ma zostać utworzone. Jeśli podana nazwa pliku wskazuje na istniejący plik, zostanie on nadpisany.

saveOptions Bzip2SaveOptions

Opcje do zapisywania archiwum bzip2. Jeśli nie określono, używany będzie rozmiar bloku 900 Kb.

Przykłady

Pisze skompresowane dane do pliku.

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

Wyjątki

ArgumentNullException

destinationFileName jest null.

SecurityException

Wywołujący nie ma wymaganych uprawnień do dostępu.

ArgumentException

destinationFileName jest pusty, zawiera tylko białe znaki lub zawiera nieprawidłowe znaki.

UnauthorizedAccessException

Dostęp do pliku destinationFileName jest zabroniony.

PathTooLongException

Podana destinationFileName, nazwa pliku, lub obie przekraczają maksymalną długość zdefiniowaną przez system. Na przykład na platformach opartych na systemie Windows, ścieżki muszą mieć mniej niż 248 znaków, a nazwy plików muszą mieć mniej niż 260 znaków.

NotSupportedException

Plik na destinationFileName zawiera dwukropek (:) w środku ciągu.

SetSource(Stream)

Ustala zawartość do skompresowania w archiwum.

public void SetSource(Stream source)

Parametry

source Stream

Strumień wejściowy do archiwum.

Przykłady

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

SetSource(FileInfo)

Ustala zawartość do skompresowania w archiwum.

public void SetSource(FileInfo fileInfo)

Parametry

fileInfo FileInfo

Referencja do pliku, który ma zostać skompresowany.

Przykłady

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

SetSource(string)

Ustala zawartość do skompresowania w archiwum.

public void SetSource(string path)

Parametry

path string

Ścieżka do pliku, który ma zostać skompresowany.

Przykłady

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

Wyjątki

ArgumentNullException

path jest null.

SecurityException

Wywołujący nie ma wymaganych uprawnień do dostępu.

ArgumentException

path jest pusty, zawiera tylko białe znaki lub zawiera nieprawidłowe znaki.

UnauthorizedAccessException

Dostęp do pliku path jest zabroniony.

PathTooLongException

Podana path, nazwa pliku, lub obie przekraczają maksymalną długość zdefiniowaną przez system. Na przykład na platformach opartych na systemie Windows, ścieżki muszą mieć mniej niż 248 znaków, a nazwy plików muszą mieć mniej niż 260 znaków.

NotSupportedException

Plik na path zawiera dwukropek (:) w środku ciągu.

SetSource(TarArchive, TarFormat)

Ustala zawartość do skompresowania w archiwum.

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

Parametry

tarArchive TarArchive

Archiwum tar do skompresowania.

format TarFormat

Definiuje format nagłówka tar.

Przykłady

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

Uwagi

Użyj tej metody do skomponowania wspólnego archiwum tar.bz2.

SetSource(CpioArchive, CpioFormat)

Ustala zawartość do skompresowania w archiwum.

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

Parametry

cpioArchive CpioArchive

Archiwum Cpio do skompresowania.

format CpioFormat

Definiuje format nagłówka cpio.

Przykłady

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

Uwagi

Użyj tej metody do skomponowania wspólnego archiwum cpio.bz2.

 Polski