Class GzipArchive
nazivni prostor: Aspose.Zip.Gzip Sastav: Aspose.Zip.dll (25.5.0)
Ova klasa predstavlja gzip arhiv datoteku. koristite ga za sastavljanje ili ekstrakciju gzip arhiva.
public class GzipArchive : IArchive, IDisposable, IArchiveFileEntry
Inheritance
Implements
IArchive , IDisposable , IArchiveFileEntry
naslijeđeni članovi
object.GetType() , object.MemberwiseClone() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()
Remarks
Gzip kompresija algoritam temelji se na algoritmu DEFLATE, koji je kombinacija LZ77 i Huffman kodiranje.
Constructors
GzipArchive()
Inicijalizira novu primjenu Aspose.Zip.Gzip.GzipArhiv razreda pripremljen za kompresije.
public GzipArchive()
Examples
Sljedeći primjer pokazuje kako komprimirati datoteku.
using (GzipArchive archive = new GzipArchive())
{
archive.SetSource("data.bin");
archive.Save("archive.gz");
}
GzipArchive(Sljedeći članakSljedeći članakBool)
Inicijalizira novi primjer Aspose.Zip.Gzip.GzipArhiv razreda pripremljen za dekompresije.
public GzipArchive(Stream sourceStream, bool parseHeader = false)
Parameters
sourceStream
Stream
Izvori iz arhiva.
parseHeader
bool
Bilo da razdvojite naslov za prijenos kako biste saznali svojstva, uključujući ime.
Examples
Otvorite arhiv iz struje i izvadite ga u
var ms = new MemoryStream();
using (GzipArchive archive = new GzipArchive(File.OpenRead("archive.gz")))
archive.Open().CopyTo(ms);
Remarks
Ovaj konstruktor ne dekompresira. pogledajte Aspose.Zip.Gzip.GzipArchive.Otvorena metoda za dekompresiranje.
Exceptions
sourceStream’ is null.
sourceStream’ is too short.
sourceStream’ ima pogrešan potpis.
GzipArchive(Sljedeći Članak Bool)
Inicijalizira novu primjenu Aspose.Zip.Gzip.GzipArhiv razreda.
public GzipArchive(string path, bool parseHeader = false)
Parameters
path
string
Put do arhivske datoteke.
parseHeader
bool
Bilo da razdvojite naslov za prijenos kako biste saznali svojstva, uključujući ime.
Examples
Otvorite arhiv iz datoteke po putu i izvadite ga na
var ms = new MemoryStream();
using (GzipArchive archive = new GzipArchive("archive.gz"))
archive.Open().CopyTo(ms);
Remarks
Ovaj konstruktor ne dekompresira. pogledajte Aspose.Zip.Gzip.GzipArchive.Otvorena metoda za dekompresiranje.
Exceptions
path’ is null.
Pozivač nema potrebnu dozvolu za pristup.
path’ je prazan, sadrži samo bijele prostore, ili sadrži nevažeće znakove.
Pristup datoteci path" je odbijen.
Na primjer, na Windows platformama, staze moraju biti manje od 248 znakova, a imena datoteke moraju biti manje od 260 znakova.
File na path’ sadrži kolona (:) u sredini trake.
Dosje je previše kratko.
Podaci u dosjeu imaju pogrešan potpis.
Properties
Name
Ime izvorne datoteke.
public string Name { get; }
Vrijednost nekretnina
UncompressedSize
Dobiva veličinu izvornog datoteke.
public ulong UncompressedSize { get; }
Vrijednost nekretnina
Remarks
Tijekom dekompresije, ova imovina može sadržavati pogrešnu veličinu.Ako nekomprimirana veličina datoteke prelazi 4GB, ova imovina će dati pogrešnu vrijednost zbog 32-bitne granice u naslovniku.
Methods
Dispose()
On obavlja zadatke definirane po aplikaciji povezane s oslobađanjem, oslobađanjem ili ponovnim oslobađanjem nekontroliranih resursa.
public void Dispose()
Dispose(Bolić)
On obavlja zadatke definirane po aplikaciji povezane s oslobađanjem, oslobađanjem ili ponovnim oslobađanjem nekontroliranih resursa.
protected virtual void Dispose(bool disposing)
Parameters
disposing
bool
Treba li iskoristiti upravljane resurse.
Extract(Stream)
Izvlači arhiv u pruženi tok.
public void Extract(Stream destination)
Parameters
destination
Stream
Destination stream. mora biti pismen.
Examples
using (var archive = new GzipArchive("archive.gz"))
{
archive.Extract(httpResponseStream);
}
Exceptions
destination’ does not support writing.
Stream je korumpiran i ne sadrži valjane podatke.
Extract(String)
Izvlači arhiv u datoteku po putu.
public FileInfo Extract(string path)
Parameters
path
string
Put do dosjea odredišta.Ako datoteka već postoji, bit će prepisana.
Returns
Informacije o izvedenim datotekama.
Exceptions
path’ is null.
Pozivač nema potrebnu dozvolu za pristup.
path’ je prazan, sadrži samo bijele prostore, ili sadrži nevažeće znakove.
Pristup datoteci path" je odbijen.
Na primjer, na Windows platformama, staze moraju biti manje od 248 znakova, a imena datoteke moraju biti manje od 260 znakova.
File na path’ sadrži kolona (:) u sredini trake.
Stream je korumpiran i ne sadrži valjane podatke.
ExtractToDirectory(String)
Sadržaj arhiva izvlači u pruženi direktorij.
public void ExtractToDirectory(string destinationDirectory)
Parameters
destinationDirectory
string
Put do direktora za stavljanje izvedenih datoteka u.
Remarks
Ako direktorija ne postoji, stvorit će se.
Exceptions
destinationDirectory’ is null.
Na primjer, na Windows platformama, staze moraju biti manje od 248 znakova, a imena datoteke moraju biti manje od 260 znakova.
Pozivač nema potrebnu dozvolu za pristup postojećem adresaru.
Ako direktorija ne postoji, put sadrži znak kolona (:) koji nije dio oznake pogona (“C:”).
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 (:).
Direktorija određena putem je datoteka. -ili- Ime mreže nije poznato.
Open()
Otvara arhiv za ekstrakciju i pruža protok s sadržajem arhiva.
public Stream Open()
Returns
Strum koji predstavlja sadržaj arhiva.
Examples
Izvuče arhiv i kopira izvučeni sadržaj u protok datoteke.
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);
}
}
Možete koristiti metodu Stream.CopyTo za .NET 4.0 i viši: unpacked.Kopy To(izvučeno);
Remarks
Pročitajte iz struje kako biste dobili originalni sadržaj datoteke. pogledajte odjeljak primjera.
Save(Stream)
Sačuvajte arhiv na pruženi tok.
public void Save(Stream outputStream)
Parameters
outputStream
Stream
Odredište za tok.
Examples
Napisati komprimirane podatke na HTTP protok odgovora.
using (var archive = new GzipArchive())
{
archive.SetSource(new FileInfo("data.bin"));
archive.Save(httpResponse.OutputStream);
}
Remarks
Mora biti pismen.
Exceptions
outputStream’ is not writable.
Izvor nije isporučen.
Save(String)
Sačuvajte arhiv za dostavljenu dosjeu odredišta.
public void Save(string destinationFileName)
Parameters
destinationFileName
string
Ako određeno ime datoteke ukazuje na postojeće datoteke, to će biti prepisano.
Examples
using (var archive = new GzipArchive())
{
archive.SetSource("data.bin");
archive.Save("archive.gz");
}
Exceptions
destinationFileName’ is null.
Pozivač nema potrebnu dozvolu za pristup.
destinationFileName’ je prazan, sadrži samo bijele prostore ili sadrži nevažeće znakove.
Pristup datoteci destinationFileName’ je odbijen.
Na primjer, na platformama s Windows-om, staze moraju biti manje od 248 znakova, a imena datoteke moraju biti manje od 260 znakova.
File u destinationFileName’ sadrži kolona (:) u sredini trake.
SetSource(Stream)
Sastavite sadržaj koji će se komprimirati unutar arhiva.
public void SetSource(Stream source)
Parameters
source
Stream
Uvodni tok za arhiv.
Examples
using (var archive = new GzipArchive())
{
archive.SetSource(new MemoryStream(new byte[] { 0x00, 0xFF }));
archive.Save("archive.gz");
}
SetSource(FileInfo)
Sastavite sadržaj koji će se komprimirati unutar arhiva.
public void SetSource(FileInfo fileInfo)
Parameters
fileInfo
FileInfo
Referencija na datoteku koja će biti komprimirana.
Examples
using (var archive = new GzipArchive())
{
archive.SetSource(new FileInfo("data.bin"));
archive.Save("archive.gz");
}
SetSource(String)
Sastavite sadržaj koji će se komprimirati unutar arhiva.
public void SetSource(string path)
Parameters
path
string
Slijedeći članakSlijedeći članakSlijedeći članakSlijedeći članakSlijedeći članakSlijedeće →
Examples
Otvorite arhiv iz datoteke po putu i izvadite ga na
using (var archive = new GzipArchive())
{
archive.SetSource("data.bin");
archive.Save("archive.gz");
}
Exceptions
path’ is null.
Pozivač nema potrebnu dozvolu za pristup.
path’ je prazan, sadrži samo bijele prostore, ili sadrži nevažeće znakove.
Pristup datoteci path" je odbijen.
Na primjer, na Windows platformama, staze moraju biti manje od 248 znakova, a imena datoteke moraju biti manje od 260 znakova.
File na path’ sadrži kolona (:) u sredini trake.
SetSource(TarArchive)
Sastavite sadržaj koji će se komprimirati unutar arhiva.
public void SetSource(TarArchive tarArchive)
Parameters
tarArchive
TarArchive
Arhiva mora biti komprimirana.
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
Koristite ovu metodu za sastavljanje zajedničkog arhiva tar.gz.