Class Bzip2Archive

Class Bzip2Archive

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

Tato třída představuje archivní soubor bzip2. Použijte ji k vytvoření nebo extrakci archivů bzip2.

public class Bzip2Archive : IArchive, IDisposable, IArchiveFileEntry

Dědění

objectBzip2Archive

Implementuje

IArchive, IDisposable, IArchiveFileEntry

Děděné členy

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

Poznámky

bzip2 komprimuje soubory pomocí algoritmu komprese textu Burrows-Wheeler a Huffmanova kódování. Více informací: https://en.wikipedia.org/wiki/Bzip2

Konstruktor

Bzip2Archive()

Inicializuje novou instanci třídy Aspose.Zip.Bzip2.Bzip2Archive připravenou pro kompresi.

public Bzip2Archive()

Příklady

Následující příklad ukazuje, jak komprimovat soubor.

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

Bzip2Archive(Stream, Bzip2LoadOptions)

Inicializuje novou instanci třídy Aspose.Zip.Bzip2.Bzip2Archive připravenou pro dekompresi.

public Bzip2Archive(Stream sourceStream, Bzip2LoadOptions loadOptions = null)

Parametry

sourceStream Stream

Zdroj archivu.

loadOptions Bzip2LoadOptions

Možnosti pro načtení archivu.

Příklady

Otevřete archiv ze streamu a extrahujte ho do MemoryStream

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

Poznámky

Tento konstruktor neprovádí dekompresi. Podívejte se na metodu Aspose.Zip.Bzip2.Bzip2Archive.Open pro dekompresi.

Bzip2Archive(string, Bzip2LoadOptions)

Inicializuje novou instanci třídy Aspose.Zip.Bzip2.Bzip2Archive připravenou pro dekompresi.

public Bzip2Archive(string path, Bzip2LoadOptions loadOptions = null)

Parametry

path string

Cesta k archivnímu souboru.

loadOptions Bzip2LoadOptions

Možnosti pro načtení archivu.

Příklady

Otevřete archiv ze souboru podle cesty a extrahujte ho do MemoryStream

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

Poznámky

Tento konstruktor neprovádí dekompresi. Podívejte se na metodu Aspose.Zip.Bzip2.Bzip2Archive.Open pro dekompresi.

Výjimky

ArgumentNullException

path je null.

SecurityException

Volající nemá potřebná oprávnění pro přístup.

ArgumentException

path je prázdný, obsahuje pouze bílé znaky nebo obsahuje neplatné znaky.

UnauthorizedAccessException

Přístup k souboru path je odepřen.

PathTooLongException

Určená path, název souboru nebo obojí překračuje maximální délku definovanou systémem. Například na platformách Windows musí být cesty kratší než 248 znaků a názvy souborů kratší než 260 znaků.

NotSupportedException

Soubor na path obsahuje dvojtečku (:) uprostřed řetězce.

FileNotFoundException

Soubor nebyl nalezen.

DirectoryNotFoundException

Určená cesta je neplatná, například se nachází na nepřiřazeném disku.

IOException

Soubor je již otevřen.

Metody

Dispose()

Provádí úkoly definované aplikací spojené s uvolněním, uvolněním nebo resetováním neřízených prostředků.

public void Dispose()

Dispose(bool)

Provádí úkoly definované aplikací spojené s uvolněním, uvolněním nebo resetováním neřízených prostředků.

protected virtual void Dispose(bool disposing)

Parametry

disposing bool

Zda by měly být uvolněny řízené prostředky.

Extract(Stream)

Extrahuje archiv do poskytnutého streamu.

public void Extract(Stream destination)

Parametry

destination Stream

Cílový stream. Musí být zapisovatelný.

Příklady

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

Výjimky

ArgumentException

destination nepodporuje zápis.

Extract(string)

Extrahuje archiv do souboru podle cesty.

public FileInfo Extract(string path)

Parametry

path string

Cesta k cílovému souboru. Pokud soubor již existuje, bude přepsán.

Vrátí

FileInfo

Informace o extrahovaném souboru.

Výjimky

ArgumentNullException

path je null.

SecurityException

Volající nemá potřebná oprávnění pro přístup.

ArgumentException

path je prázdný, obsahuje pouze bílé znaky nebo obsahuje neplatné znaky.

UnauthorizedAccessException

Přístup k souboru path je odepřen.

PathTooLongException

Určená path, název souboru nebo obojí překračuje maximální délku definovanou systémem. Například na platformách Windows musí být cesty kratší než 248 znaků a názvy souborů kratší než 260 znaků.

NotSupportedException

Soubor na path obsahuje dvojtečku (:) uprostřed řetězce.

FileNotFoundException

Soubor nebyl nalezen.

DirectoryNotFoundException

Určená cesta je neplatná, například se nachází na nepřiřazeném disku.

IOException

Soubor je již otevřen.

ExtractToDirectory(string)

Extrahuje obsah archivu do poskytnutého adresáře.

public void ExtractToDirectory(string destinationDirectory)

Parametry

destinationDirectory string

Cesta k adresáři, do kterého budou umístěny extrahované soubory.

Poznámky

Pokud adresář neexistuje, bude vytvořen.

Výjimky

ArgumentNullException

destinationDirectory je null.

PathTooLongException

Určená cesta, název souboru nebo obojí překračuje maximální délku definovanou systémem. Například na platformách Windows musí být cesty kratší než 248 znaků a názvy souborů kratší než 260 znaků.

SecurityException

Volající nemá potřebná oprávnění pro přístup k existujícímu adresáři.

NotSupportedException

Pokud adresář neexistuje, cesta obsahuje znak dvojtečky (:) který není součástí označení disku (“C:").

ArgumentException

destinationDirectory je řetězec nulové délky, obsahuje pouze bílé znaky nebo obsahuje jeden nebo více neplatných znaků. Neplatné znaky můžete zjistit pomocí metody System.IO.Path.GetInvalidPathChars. -nebo- cesta je předponována nebo obsahuje pouze znak dvojtečky (:).

IOException

Adresář určený cestou je soubor. -nebo- Síťový název není znám.

Open()

Otevře archiv pro extrakci a poskytne stream s obsahem archivu.

public Stream Open()

Vrátí

Stream

Stream, který představuje obsah archivu.

Příklady

Použití: Stream decompressed = archive.Open();

.NET 4.0 a vyšší - použijte metodu Stream.CopyTo: decompressed.CopyTo(httpResponse.OutputStream)

.NET 3.5 a starší - kopírujte bajty ručně:

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

#### Poznámky

Čtením ze streamu získáte původní obsah souboru. Podívejte se na sekci příkladů.

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

Uloží archiv do poskytnutého streamu.

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

Parametry

outputStream Stream

Cílový stream.

saveOptions Bzip2SaveOptions

Možnosti pro uložení archivu bzip2. Pokud nejsou specifikovány, bude použita velikost bloku 900 Kb.

Příklady

Zapíše komprimovaná data do streamu http odpovědi.

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

Poznámky

outputStream musí být zapisovatelný.

Výjimky

InvalidOperationException

Zdroj dat, který má být archivován, nebyl poskytnut.

ArgumentException

outputStream není zapisovatelný.

UnauthorizedAccessException

Zdroj souboru je pouze pro čtení nebo je to adresář.

DirectoryNotFoundException

Určená cesta zdroje souboru je neplatná, například se nachází na nepřiřazeném disku.

IOException

Zdroj souboru je již otevřen.

Save(string, Bzip2SaveOptions)

Uloží archiv do poskytnutého cílového souboru.

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

Parametry

destinationFileName string

Cesta archivu, který má být vytvořen. Pokud určený název souboru odkazuje na existující soubor, bude přepsán.

saveOptions Bzip2SaveOptions

Možnosti pro uložení archivu bzip2. Pokud nejsou specifikovány, bude použita velikost bloku 900 Kb.

Příklady

Zapíše komprimovaná data do souboru.

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

Výjimky

ArgumentNullException

destinationFileName je null.

SecurityException

Volající nemá potřebná oprávnění pro přístup.

ArgumentException

destinationFileName je prázdný, obsahuje pouze bílé znaky nebo obsahuje neplatné znaky.

UnauthorizedAccessException

Přístup k souboru destinationFileName je odepřen.

PathTooLongException

Určená destinationFileName, název souboru nebo obojí překračuje maximální délku definovanou systémem. Například na platformách Windows musí být cesty kratší než 248 znaků a názvy souborů kratší než 260 znaků.

NotSupportedException

Soubor na destinationFileName obsahuje dvojtečku (:) uprostřed řetězce.

SetSource(Stream)

Nastaví obsah, který má být komprimován v archivu.

public void SetSource(Stream source)

Parametry

source Stream

Vstupní stream pro archiv.

Příklady

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

SetSource(FileInfo)

Nastaví obsah, který má být komprimován v archivu.

public void SetSource(FileInfo fileInfo)

Parametry

fileInfo FileInfo

Odkaz na soubor, který má být komprimován.

Příklady

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

SetSource(string)

Nastaví obsah, který má být komprimován v archivu.

public void SetSource(string path)

Parametry

path string

Cesta k souboru, který má být komprimován.

Příklady

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

Výjimky

ArgumentNullException

path je null.

SecurityException

Volající nemá potřebná oprávnění pro přístup.

ArgumentException

path je prázdný, obsahuje pouze bílé znaky nebo obsahuje neplatné znaky.

UnauthorizedAccessException

Přístup k souboru path je odepřen.

PathTooLongException

Určená path, název souboru nebo obojí překračuje maximální délku definovanou systémem. Například na platformách Windows musí být cesty kratší než 248 znaků a názvy souborů kratší než 260 znaků.

NotSupportedException

Soubor na path obsahuje dvojtečku (:) uprostřed řetězce.

SetSource(TarArchive, TarFormat)

Nastaví obsah, který má být komprimován v archivu.

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

Parametry

tarArchive TarArchive

Tar archiv, který má být komprimován.

format TarFormat

Definuje formát hlavičky tar.

Příklady

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

Poznámky

Použijte tuto metodu k vytvoření společného archivu tar.bz2.

SetSource(CpioArchive, CpioFormat)

Nastaví obsah, který má být komprimován v archivu.

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

Parametry

cpioArchive CpioArchive

Cpio archiv, který má být komprimován.

format CpioFormat

Definuje formát hlavičky cpio.

Příklady

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

Poznámky

Použijte tuto metodu k vytvoření společného archivu cpio.bz2.

 Čeština