Class GzipArchive
Именује се: Aspose.Zip.Gzip Асамблеја: Aspose.Zip.dll (25.5.0)
Ова класа представља gzip архивни датотеку. користите га за састављање или извлачење gzip архива.
public class GzipArchive : IArchive, IDisposable, IArchiveFileEntry
Inheritance
Implements
IArchive , IDisposable , IArchiveFileEntry
Наслеђени чланови
object.GetType() , object.MemberwiseClone() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()
Remarks
Алгоритам компресије ГЗИП-а заснива се на алгоритам ДЕФЛАТЕ-а, који је комбинација ЛЗ77 и Хуффмана кодирања.
Constructors
GzipArchive()
Иницијалише нову инстанцију Асписе.Зип.Гзип.ГзипАрхиве класе припремљене за компресију.
public GzipArchive()
Examples
Следећи пример показује како да компресирате датотеку.
using (GzipArchive archive = new GzipArchive())
{
archive.SetSource("data.bin");
archive.Save("archive.gz");
}
GzipArchive(Стрејм , Боол)
Иницијалише нову инстанцију Асписе.Зип.Гзип.ГзипАрхиве класе припремљене за декомпресију.
public GzipArchive(Stream sourceStream, bool parseHeader = false)
Parameters
sourceStream
Stream
Извор из архива.
parseHeader
bool
Без обзира на то да ли да парсе поток наслов да пронађе својства, укључујући и име. чини смисао за траживи поток само.
Examples
Отворите архиву из струје и извуците га у
var ms = new MemoryStream();
using (GzipArchive archive = new GzipArchive(File.OpenRead("archive.gz")))
archive.Open().CopyTo(ms);
Remarks
Овај конструктор не декомпресира. погледајте Aspose.Zip.Gzip.GzipArchive.Отварање метода за декомпресију.
Exceptions
sourceStream’ is null.
sourceStream’ is too short.
sourceStream’ има погрешну потпис.
GzipArchive(КСНУМКС, Боол)
Иницијалише нову инстанцију класе Aspose.Zip.Gzip.GzipArchive.
public GzipArchive(string path, bool parseHeader = false)
Parameters
path
string
Пут до архиве.
parseHeader
bool
Без обзира на то да ли да парсе поток наслов да пронађе својства, укључујући и име. чини смисао за траживи поток само.
Examples
Отворите архиву из датотеке по путу и извуците га на
var ms = new MemoryStream();
using (GzipArchive archive = new GzipArchive("archive.gz"))
archive.Open().CopyTo(ms);
Remarks
Овај конструктор не декомпресира. погледајте Aspose.Zip.Gzip.GzipArchive.Отварање метода за декомпресију.
Exceptions
path’ is null.
Позивач нема захтеван дозволу за приступ.
path’ је празан, садржи само беле просторе, или садржи неважеће знакове.
Приступ датотеци path’ је одбијен.
На пример, на платформима заснованим на Виндовсу, путеви морају бити мање од 248 знакова, а имена датотеке морају бити мање од 260 знакова.
Датотека у path’ садржи колону (:) у средини редове.
Датотека је превише кратка.
Датотеке у датотеци имају погрешну потпис.
Properties
Name
Име оригиналног датотеке.
public string Name { get; }
Вредност имовине
UncompressedSize
Добија величину оригиналног датотеке.
public ulong UncompressedSize { get; }
Вредност имовине
Remarks
Током декомпресије, ова имовина може да садржи погрешну величину.Ако некомпресирана величина датотеке прелази 4ГБ, ова имовина ће дати погрешну вредност због 32-битног ограничења у наслову.
Methods
Dispose()
Извршава апликације-дефинисане задатке повезане са ослобађањем, ослобађањем или рестаурацијом неконтролисаних ресурса.
public void Dispose()
Dispose(Боол)
Извршава апликације-дефинисане задатке повезане са ослобађањем, ослобађањем или рестаурацијом неконтролисаних ресурса.
protected virtual void Dispose(bool disposing)
Parameters
disposing
bool
Da li je potrebno iskoristiti upravljane resurse?
Extract(Stream)
Истраживање архива у пруженом току.
public void Extract(Stream destination)
Parameters
destination
Stream
Destination stream. mora da bude pisano.
Examples
using (var archive = new GzipArchive("archive.gz"))
{
archive.Extract(httpResponseStream);
}
Exceptions
destination’ does not support writing.
Поток је корумпиран и не садржи важеће податке.
Extract(Стринг)
Истраживање архива у датотеку путем.
public FileInfo Extract(string path)
Parameters
path
string
Пут до дестинације датотеке.Ако датотека већ постоји, она ће бити преписана.
Returns
Информације о извађеним датотекама.
Exceptions
path’ is null.
Позивач нема захтеван дозволу за приступ.
path’ је празан, садржи само беле просторе, или садржи неважеће знакове.
Приступ датотеци path’ је одбијен.
На пример, на платформима заснованим на Виндовсу, путеви морају бити мање од 248 знакова, а имена датотеке морају бити мање од 260 знакова.
Датотека у path’ садржи колону (:) у средини редове.
Поток је корумпиран и не садржи важеће податке.
ExtractToDirectory(Стринг)
Екстрактира садржај архива у обезбеђени директоријум.
public void ExtractToDirectory(string destinationDirectory)
Parameters
destinationDirectory
string
Пут у директоријум да стави извучене датотеке у.
Remarks
Ако директоријум не постоји, он ће бити креиран.
Exceptions
destinationDirectory’ is null.
На пример, на платформима заснованим на Виндовсу, путеви морају бити мање од 248 знакова, а имена датотека морају бити мање од 260 знакова.
Позивач нема неопходне дозволе за приступ постојећем директоријуму.
Ако директоријум не постоји, пут садржи карактер колона (:) који није део етикета дискова (“Ц:”).
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 (:).
Директоријум који је одређен путем је датотека. -или- Име мреже није познато.
Open()
Отворити архиву за екстракцију и пружити поток са садржајем архива.
public Stream Open()
Returns
Поток који представља садржај архива.
Examples
Екстрактира архиве и копира извучену садржај у поток датотеке.
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 noviji: unpacked.KopiTo(ekstraktirani);
Remarks
Прочитајте из струје да бисте добили оригинални садржај датотеке.
Save(Stream)
Сачува архиве на пружену струју.
public void Save(Stream outputStream)
Parameters
outputStream
Stream
Дисциплинарни ток.
Examples
Пише компресиране податке у ХТП реакционом току.
using (var archive = new GzipArchive())
{
archive.SetSource(new FileInfo("data.bin"));
archive.Save(httpResponse.OutputStream);
}
Remarks
Mora da bude pismen.
Exceptions
outputStream’ is not writable.
Извор није обезбеђен.
Save(Стринг)
Сачува архиве на датотеку дестинације која је обезбеђена.
public void Save(string destinationFileName)
Parameters
destinationFileName
string
Ако наведено име датотеке указује на постојећи датотеку, то ће бити преписано.
Examples
using (var archive = new GzipArchive())
{
archive.SetSource("data.bin");
archive.Save("archive.gz");
}
Exceptions
destinationFileName’ is null.
Позивач нема захтеван дозволу за приступ.
destinationFileName’ je prazan, sadrži samo bele prostore ili sadrži nevažeće znakove.
Приступ датотеци destinationFileName’ је одбијен.
На пример, на платформима заснованим на Виндовсу, путеви морају бити мање од 248 знакова, а имена датотеке морају бити мање од 260 знакова.
Датотека у destinationFileName’ садржи колону (:) у средини редове.
SetSource(Stream)
Поставите садржај да буде компресиран унутар архива.
public void SetSource(Stream source)
Parameters
source
Stream
улазни ток за архиве.
Examples
using (var archive = new GzipArchive())
{
archive.SetSource(new MemoryStream(new byte[] { 0x00, 0xFF }));
archive.Save("archive.gz");
}
SetSource(FileInfo)
Поставите садржај да буде компресиран унутар архива.
public void SetSource(FileInfo fileInfo)
Parameters
fileInfo
FileInfo
Референција на датотеку која ће бити компресирана.
Examples
using (var archive = new GzipArchive())
{
archive.SetSource(new FileInfo("data.bin"));
archive.Save("archive.gz");
}
SetSource(Стринг)
Поставите садржај да буде компресиран унутар архива.
public void SetSource(string path)
Parameters
path
string
Пут да се дају да се компресирају.
Examples
Отворите архиву из датотеке по путу и извуците га на
using (var archive = new GzipArchive())
{
archive.SetSource("data.bin");
archive.Save("archive.gz");
}
Exceptions
path’ is null.
Позивач нема захтеван дозволу за приступ.
path’ је празан, садржи само беле просторе, или садржи неважеће знакове.
Приступ датотеци path’ је одбијен.
На пример, на платформима заснованим на Виндовсу, путеви морају бити мање од 248 знакова, а имена датотеке морају бити мање од 260 знакова.
Датотека у path’ садржи колону (:) у средини редове.
SetSource(TarArchive)
Поставите садржај да буде компресиран унутар архива.
public void SetSource(TarArchive tarArchive)
Parameters
tarArchive
TarArchive
Да би архиви били компресирани.
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
Користите ову методу да бисте саставили заједнички tar.gz архив.