Class GzipArchive

Class GzipArchive

ja nimityö: Aspose.Zip.Gzip Kokoelma: Aspose.Zip.dll (25.5.0)

Tämä luokka edustaa gzip arkistotiedostoa. käytä sitä koostamaan tai poistaa gzip arkistoja.

public class GzipArchive : IArchive, IDisposable, IArchiveFileEntry

Inheritance

object GzipArchive

Implements

IArchive , IDisposable , IArchiveFileEntry

Perintöjäsenet

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

Remarks

Gzip-kompressialgoritmi perustuu DEFLATE-algoritmiin, joka on yhdistelmä LZ77: n ja Huffmanin koodausta.

Constructors

GzipArchive()

Aloitetaan uusi tapaus Aspose.Zip.Gzip.GzipArchive luokka valmistettu kompressointiin.

public GzipArchive()

Examples

Seuraava esimerkki osoittaa, miten tiedostoa puristetaan.

using (GzipArchive archive = new GzipArchive()) 
{
    archive.SetSource("data.bin");
    archive.Save("archive.gz");
}

GzipArchive(Liikenne ja bool)

Aloitetaan uusi tapaus Aspose.Zip.Gzip.GzipArchive luokka valmistettu dekompresointiin.

public GzipArchive(Stream sourceStream, bool parseHeader = false)

Parameters

sourceStream Stream

Arkiston lähde on.

parseHeader bool

Onko parse virran otsikko löytää ominaisuuksia, mukaan lukien nimi. tekee järkeä vain etsityn virran.

Examples

Avaa arkisto virtauksesta ja poista se a

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

Remarks

Tämä rakentaja ei hajoa. Katso Aspose.Zip.Gzip.GzipArchive.Open menetelmä hajoamiseen.

Exceptions

ArgumentNullException

sourceStream’ is null.

EndOfStreamException

sourceStream’ is too short.

InvalidDataException

sourceStream’ on väärä allekirjoitus.

GzipArchive(Sormus ja bool)

Aloita uusi esimerkki Aspose.Zip.Gzip.GzipArchive luokan.

public GzipArchive(string path, bool parseHeader = false)

Parameters

path string

Tietä arkistoon tiedostoon.

parseHeader bool

Onko parse virran otsikko löytää ominaisuuksia, mukaan lukien nimi. tekee järkeä vain etsityn virran.

Examples

Avaa arkisto tiedostosta reitin mukaan ja poista se

var ms = new MemoryStream();
using (GzipArchive archive = new GzipArchive("archive.gz"))
  archive.Open().CopyTo(ms);

Remarks

Tämä rakentaja ei hajoa. Katso Aspose.Zip.Gzip.GzipArchive.Open menetelmä hajoamiseen.

Exceptions

ArgumentNullException

path’ is null.

SecurityException

Kääntäjällä ei ole tarvittavaa käyttöoikeutta.

ArgumentException

path’ on tyhjä, sisältää vain valkoisia tiloja tai sisältää epätasaisia merkkejä.

UnauthorizedAccessException

Pääsy path" -tiedostoon kielletään.

PathTooLongException

Määritetty path", tiedoston nimi tai molemmat ylittävät järjestelmän määrittämän enimmäispituuden. Esimerkiksi Windows-pohjaisilla alustoilla tiet on oltava alle 248 merkkiä ja tiedoston nimet on oltava alle 260 merkkiä.

NotSupportedException

path’ -tiedosto sisältää sarjan keskellä olevan sarjan (:) sarjan.

EndOfStreamException

Tiedosto on liian lyhyt.

InvalidDataException

Tiedot tiedostossa on väärä allekirjoitus.

Properties

Name

alkuperäisen tiedoston nimi.

public string Name { get; }

Omistuksen arvo

string

UncompressedSize

Saat alkuperäisen tiedoston koon.

public ulong UncompressedSize { get; }

Omistuksen arvo

ulong

Remarks

Jos pakottamaton tiedoston koko ylittää 4GB, tämä omaisuus antaa väärän arvon johtuen 32-bittisen päällysrajan.

Methods

Dispose()

Se suorittaa sovellukseen määriteltyjä tehtäviä, jotka liittyvät vapauttamiseen, vapauttamiseen tai hallitsemattomien resurssien palauttamiseen.

public void Dispose()

Dispose(Booli)

Se suorittaa sovellukseen määriteltyjä tehtäviä, jotka liittyvät vapauttamiseen, vapauttamiseen tai hallitsemattomien resurssien palauttamiseen.

protected virtual void Dispose(bool disposing)

Parameters

disposing bool

Hallittuja resursseja on käytettävä.

Extract(Stream)

Poista arkisto antamaan virtaukseen.

public void Extract(Stream destination)

Parameters

destination Stream

Tarkoitus: Tarkoitus on kirjoitettava.

Examples

using (var archive = new GzipArchive("archive.gz"))
{
     archive.Extract(httpResponseStream);
}

Exceptions

ArgumentException

destination’ does not support writing.

InvalidDataException

Virta on korruptoitu ja ei sisällä voimassa olevia tietoja.

Extract(String)

Poista arkisto tiedostoon reitin mukaan.

public FileInfo Extract(string path)

Parameters

path string

Jos tiedosto on jo olemassa, se kirjoitetaan yli.

Returns

FileInfo

Tietoa saadusta tiedostosta.

Exceptions

ArgumentNullException

path’ is null.

SecurityException

Kääntäjällä ei ole tarvittavaa käyttöoikeutta.

ArgumentException

path’ on tyhjä, sisältää vain valkoisia tiloja tai sisältää epätasaisia merkkejä.

UnauthorizedAccessException

Pääsy path" -tiedostoon kielletään.

PathTooLongException

Määritetty path", tiedoston nimi tai molemmat ylittävät järjestelmän määrittämän enimmäispituuden. Esimerkiksi Windows-pohjaisilla alustoilla tiet on oltava alle 248 merkkiä ja tiedoston nimet on oltava alle 260 merkkiä.

NotSupportedException

path’ -tiedosto sisältää sarjan keskellä olevan sarjan (:) sarjan.

InvalidDataException

Virta on korruptoitu ja ei sisällä voimassa olevia tietoja.

ExtractToDirectory(String)

Poista arkiston sisältö toimitetulle direktiiville.

public void ExtractToDirectory(string destinationDirectory)

Parameters

destinationDirectory string

Matka direktoriin sijoittaa poistettuja tiedostoja.

Remarks

Jos rekisteri ei ole olemassa, se luodaan.

Exceptions

ArgumentNullException

destinationDirectory’ is null.

PathTooLongException

Tietyt reitit, tiedoston nimi tai molemmat ylittävät järjestelmän määrittämän enimmäispituuden. Esimerkiksi Windows-pohjaisissa alustoissa reitit on oltava alle 248 merkkiä ja tiedoston nimet on oltava alle 260 merkkiä.

SecurityException

Kääntäjällä ei ole tarvittavaa lupaa käyttää olemassa olevaa direktoria.

NotSupportedException

Jos luetteloa ei ole olemassa, reitillä on rintakehän merkki (:) joka ei ole osa ohjaimen merkkiä (“C:”).

ArgumentException

destinationDirectory’ is a zero-length string, contains only white space, or contains one or more invalid characters. You can query for invalid characters by using the System.IO.Path.GetInvalidPathChars method.-or- path is prefixed with, or contains, only a colon character (:).

IOException

Reitin mukainen luettelo on tiedosto. -or- Verkon nimi ei ole tiedossa.

Open()

Avaa arkisto kaivaa varten ja antaa virran arkiston sisällön kanssa.

public Stream Open()

Returns

Stream

Virta, joka edustaa arkiston sisältöä.

Examples

Poistaa arkiston ja kopioi poistetun sisällön tiedostojen virtaukseen.

using (var archive = new GzipArchive("archive.gz"))
{
    using (var extracted = File.Create("data.bin"))
    {
        var unpacked = archive.Open();
        byte[] b = new byte[8192];
        int bytesRead;
        while (0 < (bytesRead = unpacked.Read(b, 0, b.Length)))
            extracted.Write(b, 0, bytesRead);
    }            
}

Voitte käyttää Stream.CopyTo -menetelmää .NET 4.0 ja uudemmalle: unpacked.KopiTo(extracted);

Remarks

Lue virta saadaksesi tiedoston alkuperäisen sisällön. Katso esimerkkejä osasta.

Save(Stream)

Säästää arkistoa tarjottuun virtaukseen.

public void Save(Stream outputStream)

Parameters

outputStream Stream

Tavoitteen virta.

Examples

Kirjoita tiivistetyt tiedot HTTP:n vastausvirtaan.

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

Remarks

Pitää olla kirjoitettavaa.

Exceptions

ArgumentException

outputStream’ is not writable.

InvalidOperationException

Lähde ei ole toimitettu.

Save(String)

Tallenna arkistoa osoitustiedostoon.

public void Save(string destinationFileName)

Parameters

destinationFileName string

Jos tiedoston nimi viittaa olemassa olevaan tiedostoon, se kirjoitetaan uudelleen.

Examples

using (var archive = new GzipArchive())
{
    archive.SetSource("data.bin");
    archive.Save("archive.gz");
}

Exceptions

ArgumentNullException

destinationFileName’ is null.

SecurityException

Kääntäjällä ei ole tarvittavaa käyttöoikeutta.

ArgumentException

destinationFileName’ on tyhjä, sisältää vain valkoisia tiloja tai sisältää epätasaisia merkkejä.

UnauthorizedAccessException

Pääsy destinationFileName’ -tiedostoon kielletään.

PathTooLongException

Määritetty destinationFileName’, tiedoston nimi, tai molemmat ylittävät järjestelmän määrittämän enimmäispituuden. Esimerkiksi Windows-pohjaisilla alustoilla reitin on oltava alle 248 merkkiä ja tiedoston nimet on oltava alle 260 merkkiä.

NotSupportedException

Tiedosto destinationFileName’ sisältää sarjan keskellä olevan sarjan (:) sarjan.

SetSource(Stream)

Aseta sisältö tiivistettäväksi arkiston sisällä.

public void SetSource(Stream source)

Parameters

source Stream

Sisällön virta arkistoon.

Examples

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

SetSource(FileInfo)

Aseta sisältö tiivistettäväksi arkiston sisällä.

public void SetSource(FileInfo fileInfo)

Parameters

fileInfo FileInfo

Viittaus tiedostoon, joka on kompresoitu.

Examples

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

SetSource(String)

Aseta sisältö tiivistettäväksi arkiston sisällä.

public void SetSource(string path)

Parameters

path string

Matka tiedostoon kompresoida.

Examples

Avaa arkisto tiedostosta reitin mukaan ja poista se

using (var archive = new GzipArchive()) 
{
    archive.SetSource("data.bin");
    archive.Save("archive.gz");
}

Exceptions

ArgumentNullException

path’ is null.

SecurityException

Kääntäjällä ei ole tarvittavaa käyttöoikeutta.

ArgumentException

path’ on tyhjä, sisältää vain valkoisia tiloja tai sisältää epätasaisia merkkejä.

UnauthorizedAccessException

Pääsy path" -tiedostoon kielletään.

PathTooLongException

Määritetty path", tiedoston nimi tai molemmat ylittävät järjestelmän määrittämän enimmäispituuden. Esimerkiksi Windows-pohjaisilla alustoilla tiet on oltava alle 248 merkkiä ja tiedoston nimet on oltava alle 260 merkkiä.

NotSupportedException

path’ -tiedosto sisältää sarjan keskellä olevan sarjan (:) sarjan.

SetSource(TarArchive)

Aseta sisältö tiivistettäväksi arkiston sisällä.

public void SetSource(TarArchive tarArchive)

Parameters

tarArchive TarArchive

Tar arkistoja on purettava.

Examples

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

Remarks

Käytä tätä menetelmää koostamaan yhteinen tar.gz arkisto.

 Suomi