Class Bzip2Archive

Class Bzip2Archive

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

Denna klass representerar en bzip2-arkivfil. Använd den för att komprimera eller extrahera bzip2-arkiv.

public class Bzip2Archive : IArchive, IDisposable, IArchiveFileEntry

Arv

objectBzip2Archive

Implementerar

IArchive, IDisposable, IArchiveFileEntry

Ärvda medlemmar

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

Kommentarer

bzip2 komprimerar filer med hjälp av Burrows-Wheeler blocksorteringsalgoritmen för textkomprimering och Huffman-kodning. Se mer: https://en.wikipedia.org/wiki/Bzip2

Konstruktörer

Bzip2Archive()

Initierar en ny instans av Aspose.Zip.Bzip2.Bzip2Archive-klassen som är förberedd för komprimering.

public Bzip2Archive()

Exempel

Följande exempel visar hur man komprimerar en fil.

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

Bzip2Archive(Stream, Bzip2LoadOptions)

Initierar en ny instans av Aspose.Zip.Bzip2.Bzip2Archive-klassen som är förberedd för dekomprimering.

public Bzip2Archive(Stream sourceStream, Bzip2LoadOptions loadOptions = null)

Parametrar

sourceStream Stream

Källan för arkivet.

loadOptions Bzip2LoadOptions

Alternativen för att ladda arkivet med.

Exempel

Öppna ett arkiv från en ström och extrahera det till en MemoryStream

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

Kommentarer

Denna konstruktor dekomprimerar inte. Se Aspose.Zip.Bzip2.Bzip2Archive.Open-metoden för dekomprimering.

Bzip2Archive(string, Bzip2LoadOptions)

Initierar en ny instans av Aspose.Zip.Bzip2.Bzip2Archive-klassen som är förberedd för dekomprimering.

public Bzip2Archive(string path, Bzip2LoadOptions loadOptions = null)

Parametrar

path string

Sökvägen till arkivfilen.

loadOptions Bzip2LoadOptions

Alternativen för att ladda arkivet med.

Exempel

Öppna ett arkiv från fil efter sökväg och extrahera det till en MemoryStream

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

Kommentarer

Denna konstruktor dekomprimerar inte. Se Aspose.Zip.Bzip2.Bzip2Archive.Open-metoden för dekomprimering.

Undantag

ArgumentNullException

path är null.

SecurityException

Anroparen har inte den nödvändiga behörigheten för att få åtkomst.

ArgumentException

path är tom, innehåller endast vita tecken eller innehåller ogiltiga tecken.

UnauthorizedAccessException

Åtkomst till fil path nekas.

PathTooLongException

Den angivna path, filnamn, eller båda överskrider den systemdefinierade maximala längden. Till exempel, på Windows-baserade plattformar, måste sökvägar vara mindre än 248 tecken, och filnamn måste vara mindre än 260 tecken.

NotSupportedException

Fil vid path innehåller ett kolon (:) i mitten av strängen.

FileNotFoundException

Filens finns inte.

DirectoryNotFoundException

Den angivna sökvägen är ogiltig, till exempel att den ligger på en icke-mappad enhet.

IOException

Fil är redan öppen.

Metoder

Dispose()

Utför applikationsdefinierade uppgifter kopplade till att frigöra, släppa eller återställa icke-hanterade resurser.

public void Dispose()

Dispose(bool)

Utför applikationsdefinierade uppgifter kopplade till att frigöra, släppa eller återställa icke-hanterade resurser.

protected virtual void Dispose(bool disposing)

Parametrar

disposing bool

Om hanterade resurser ska frigöras.

Extract(Stream)

Extraherar arkivet till den angivna strömmen.

public void Extract(Stream destination)

Parametrar

destination Stream

Destinationström. Måste vara skrivbar.

Exempel

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

Undantag

ArgumentException

destination stöder inte skrivning.

Extract(string)

Extraherar arkivet till filen efter sökväg.

public FileInfo Extract(string path)

Parametrar

path string

Sökvägen till destinationfilen. Om filen redan finns, kommer den att skrivas över.

Returnerar

FileInfo

Info om den extraherade filen.

Undantag

ArgumentNullException

path är null.

SecurityException

Anroparen har inte den nödvändiga behörigheten för att få åtkomst.

ArgumentException

path är tom, innehåller endast vita tecken eller innehåller ogiltiga tecken.

UnauthorizedAccessException

Åtkomst till fil path nekas.

PathTooLongException

Den angivna path, filnamn, eller båda överskrider den systemdefinierade maximala längden. Till exempel, på Windows-baserade plattformar, måste sökvägar vara mindre än 248 tecken, och filnamn måste vara mindre än 260 tecken.

NotSupportedException

Fil vid path innehåller ett kolon (:) i mitten av strängen.

FileNotFoundException

Filens finns inte.

DirectoryNotFoundException

Den angivna sökvägen är ogiltig, till exempel att den ligger på en icke-mappad enhet.

IOException

Fil är redan öppen.

ExtractToDirectory(string)

Extraherar innehållet i arkivet till den angivna mappen.

public void ExtractToDirectory(string destinationDirectory)

Parametrar

destinationDirectory string

Sökvägen till mappen där de extraherade filerna ska placeras.

Kommentarer

Om mappen inte finns, kommer den att skapas.

Undantag

ArgumentNullException

destinationDirectory är null.

PathTooLongException

Den angivna sökvägen, filnamn, eller båda överskrider den systemdefinierade maximala längden. Till exempel, på Windows-baserade plattformar, måste sökvägar vara mindre än 248 tecken och filnamn måste vara mindre än 260 tecken.

SecurityException

Anroparen har inte den nödvändiga behörigheten för att få åtkomst till den befintliga mappen.

NotSupportedException

Om mappen inte finns, innehåller sökvägen ett kolon-tecken (:) som inte är en del av en enhetsbeteckning (“C:").

ArgumentException

destinationDirectory är en sträng med noll längd, innehåller endast vita tecken eller innehåller ett eller flera ogiltiga tecken. Du kan fråga efter ogiltiga tecken genom att använda metoden System.IO.Path.GetInvalidPathChars. -eller- sökvägen är förprefixed med, eller innehåller, endast ett kolon-tecken (:).

IOException

Den angivna sökvägen är en fil. -eller- Det nätverksnamnet är inte känt.

Open()

Öppnar arkivet för extrahering och tillhandahåller en ström med arkivinnehåll.

public Stream Open()

Returnerar

Stream

Strömmen som representerar innehållet i arkivet.

Exempel

Användning: Stream decompressed = archive.Open();

.NET 4.0 och högre - använd Stream.CopyTo-metoden: decompressed.CopyTo(httpResponse.OutputStream)

.NET 3.5 och tidigare - kopiera byte manuellt:

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

#### Kommentarer

Läs från strömmen för att  det ursprungliga innehållet i filen. Se avsnittet exempel.

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

Sparar arkivet till den angivna strömmen.

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

Parametrar

outputStream Stream

Destinationström.

saveOptions Bzip2SaveOptions

Alternativ för att spara ett bzip2-arkiv. Om det inte anges, används en blockstorlek på 900 Kb.

Exempel

Skriver komprimerad data till http-svarström.

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

Kommentarer

outputStream måste vara skrivbar.

Undantag

InvalidOperationException

Källan till data som ska arkiveras har inte angivits.

ArgumentException

outputStream är inte skrivbar.

UnauthorizedAccessException

Filkällan är skrivskyddad eller är en mapp.

DirectoryNotFoundException

Den angivna filkällans sökväg är ogiltig, till exempel att den ligger på en icke-mappad enhet.

IOException

Filkällan är redan öppen.

Save(string, Bzip2SaveOptions)

Sparar arkivet till den angivna destinationsfilen.

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

Parametrar

destinationFileName string

Sökvägen till arkivet som ska skapas. Om det angivna filnamnet pekar på en befintlig fil, kommer den att skrivas över.

saveOptions Bzip2SaveOptions

Alternativ för att spara ett bzip2-arkiv. Om det inte anges, används en blockstorlek på 900 Kb.

Exempel

Skriver komprimerad data till fil.

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

Undantag

ArgumentNullException

destinationFileName är null.

SecurityException

Anroparen har inte den nödvändiga behörigheten för att få åtkomst.

ArgumentException

destinationFileName är tom, innehåller endast vita tecken, eller innehåller ogiltiga tecken.

UnauthorizedAccessException

Åtkomst till fil destinationFileName nekas.

PathTooLongException

Den angivna destinationFileName, filnamn, eller båda överskrider den systemdefinierade maximala längden. Till exempel, på Windows-baserade plattformar, måste sökvägar vara mindre än 248 tecken, och filnamn måste vara mindre än 260 tecken.

NotSupportedException

Fil vid destinationFileName innehåller ett kolon (:) i mitten av strängen.

SetSource(Stream)

Sätter innehållet som ska komprimeras inom arkivet.

public void SetSource(Stream source)

Parametrar

source Stream

Indataström för arkivet.

Exempel

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

SetSource(FileInfo)

Sätter innehållet som ska komprimeras inom arkivet.

public void SetSource(FileInfo fileInfo)

Parametrar

fileInfo FileInfo

Referens till en fil som ska komprimeras.

Exempel

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

SetSource(string)

Sätter innehållet som ska komprimeras inom arkivet.

public void SetSource(string path)

Parametrar

path string

Sökväg till filen som ska komprimeras.

Exempel

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

Undantag

ArgumentNullException

path är null.

SecurityException

Anroparen har inte den nödvändiga behörigheten för att få åtkomst.

ArgumentException

path är tom, innehåller endast vita tecken, eller innehåller ogiltiga tecken.

UnauthorizedAccessException

Åtkomst till fil path nekas.

PathTooLongException

Den angivna path, filnamn, eller båda överskrider den systemdefinierade maximala längden. Till exempel, på Windows-baserade plattformar, måste sökvägar vara mindre än 248 tecken, och filnamn måste vara mindre än 260 tecken.

NotSupportedException

Fil vid path innehåller ett kolon (:) i mitten av strängen.

SetSource(TarArchive, TarFormat)

Sätter innehållet som ska komprimeras inom arkivet.

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

Parametrar

tarArchive TarArchive

Tar-arkiv som ska komprimeras.

format TarFormat

Definierar tar-headerformat.

Exempel

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

Kommentarer

Använd denna metod för att komponera ett gemensamt tar.bz2-arkiv.

SetSource(CpioArchive, CpioFormat)

Sätter innehållet som ska komprimeras inom arkivet.

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

Parametrar

cpioArchive CpioArchive

Cpio-arkiv som ska komprimeras.

format CpioFormat

Definierar cpio-headerformat.

Exempel

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

Kommentarer

Använd denna metod för att komponera ett gemensamt cpio.bz2-arkiv.

 Svenska