Class GzipArchive
İsim alanı : Aspose.Zip.Gzip Toplama: Aspose.Zip.dll (25.5.0)
Bu sınıf bir gzip arşivi dosyasını temsil eder. gzip arşivlerini oluşturmak veya çıkarmak için kullanın.
public class GzipArchive : IArchive, IDisposable, IArchiveFileEntry
Inheritance
Implements
IArchive , IDisposable , IArchiveFileEntry
mirasçı üyeleri
object.GetType() , object.MemberwiseClone() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()
Remarks
Gzip kompresyon algoritması, LZ77 ve Huffman kodlama kombinasyonu olan DEFLATE algoritmasına dayanmaktadır.
Constructors
GzipArchive()
Baskı için hazırlanan Aspose.Zip.Gzip.GzipArchive sınıfının yeni bir örneğini başlatır.
public GzipArchive()
Examples
Aşağıdaki örnek, bir dosyayı nasıl sıkıştırılacağını gösterir.
using (GzipArchive archive = new GzipArchive())
{
archive.SetSource("data.bin");
archive.Save("archive.gz");
}
GzipArchive(Çıkış , Bool)
Aspose.Zip.Gzip.GzipArchive sınıfının yeni bir örneği dekompres için hazırlanır.
public GzipArchive(Stream sourceStream, bool parseHeader = false)
Parameters
sourceStream
Stream
Arşiv kaynağıdır.
parseHeader
bool
Adı da dahil olmak üzere özellikleri bulmak için akış başlığı parse olsun. sadece arama akışı için bir anlam yaratır.
Examples
Bir arşivi bir akımdan açın ve bir
var ms = new MemoryStream();
using (GzipArchive archive = new GzipArchive(File.OpenRead("archive.gz")))
archive.Open().CopyTo(ms);
Remarks
Aspose.Zip.Gzip.GzipArchive.Open decompressing yöntemi.
Exceptions
sourceStream’ is null.
sourceStream’ is too short.
sourceStream’ yanlış imza var.
GzipArchive(Çerçeve , Bool)
Aspose.Zip.Gzip.GzipArchive sınıfının yeni bir örneğini başlatır.
public GzipArchive(string path, bool parseHeader = false)
Parameters
path
string
Arşiv dosyasına giden yol.
parseHeader
bool
Adı da dahil olmak üzere özellikleri bulmak için akış başlığı parse olsun. sadece arama akışı için bir anlam yaratır.
Examples
Dosyadan bir arşiv açın ve yolda çıkarın.
var ms = new MemoryStream();
using (GzipArchive archive = new GzipArchive("archive.gz"))
archive.Open().CopyTo(ms);
Remarks
Aspose.Zip.Gzip.GzipArchive.Open decompressing yöntemi.
Exceptions
path’ is null.
Müşteri, gerekli izinleri almamaktadır.
path’ boş, yalnızca beyaz alanlar içerir veya geçersiz karakterler içerir.
path" dosyasına erişim reddedilir.
Belirlenen path’, dosya adı, ya da her ikisi de sistem tarafından tanımlanan maksimum uzunluğu aşmaktadır. Örneğin, Windows tabanlı platformlarda, yollar 248 karakterden az olmalıdır ve dosya isimleri 260 karakterden az olmalıdır.
path’daki dosya, satırın ortasında bir sütun (:) içerir.
Dosya çok kısa.
Dosyadaki bilgiler yanlış imzalanmıştır.
Properties
Name
Orijinal bir dosyanın adı.
public string Name { get; }
Mülkiyet Değer
UncompressedSize
Orijinal bir dosya boyutunu alır.
public ulong UncompressedSize { get; }
Mülkiyet Değer
Remarks
Dekompresyon sırasında, bu mülk yanlış boyut içerebilir. eğer sıkıştırılmamış dosya boyutu 4GB’ı aşarsa, bu mülk başlıkta 32 bit sınırı nedeniyle yanlış bir değer verecektir.
Methods
Dispose()
Yönetilmemiş kaynakların serbest bırakılması, serbest bırakılması veya yeniden düzenlenmesi ile ilişkili uygulama tanımlanmış görevleri yerine getirir.
public void Dispose()
Dispose(bool)
Yönetilmemiş kaynakların serbest bırakılması, serbest bırakılması veya yeniden düzenlenmesi ile ilişkili uygulama tanımlanmış görevleri yerine getirir.
protected virtual void Dispose(bool disposing)
Parameters
disposing
bool
Yönetilen kaynakların dağıtılması gerekmektedir.
Extract(Stream)
Arşivi sağlanan akışa çıkarır.
public void Extract(Stream destination)
Parameters
destination
Stream
Destination stream. yazılabilir olması gerekir.
Examples
using (var archive = new GzipArchive("archive.gz"))
{
archive.Extract(httpResponseStream);
}
Exceptions
destination’ does not support writing.
Stream bozulmuştur ve geçerli verileri içermez.
Extract(Sırt)
Dosyayı yolda dosyaya çıkarır.
public FileInfo Extract(string path)
Parameters
path
string
Hedef dosyasına giden yol. eğer dosya zaten mevcutsa, aşırı yazılacaktır.
Returns
Çekilen dosyaların bilgisi.
Exceptions
path’ is null.
Müşteri, gerekli izinleri almamaktadır.
path’ boş, yalnızca beyaz alanlar içerir veya geçersiz karakterler içerir.
path" dosyasına erişim reddedilir.
Belirlenen path’, dosya adı, ya da her ikisi de sistem tarafından tanımlanan maksimum uzunluğu aşmaktadır. Örneğin, Windows tabanlı platformlarda, yollar 248 karakterden az olmalıdır ve dosya isimleri 260 karakterden az olmalıdır.
path’daki dosya, satırın ortasında bir sütun (:) içerir.
Stream bozulmuştur ve geçerli verileri içermez.
ExtractToDirectory(Sırt)
Arşiv içeriğini sağlanan dizine çıkarır.
public void ExtractToDirectory(string destinationDirectory)
Parameters
destinationDirectory
string
Çekilen dosyaları yerleştirmek için dizine giden yol.
Remarks
Eğer katalog yoksa, oluşturulacaktır.
Exceptions
destinationDirectory’ is null.
Örneğin, Windows tabanlı platformlarda, yollar 248 karakterden az olmalıdır ve dosya isimleri 260 karakterden az olmalıdır.
Çağrıcı, mevcut dizinlere erişmek için gerekli izinlere sahip değildir.
Eğer dizin yoksa, yol bir sürücü etiketinin bir parçası olmayan bir kolon karakterini (:) içerir (“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 (:).
Yol tarafından belirtilen dizin bir dosyadır. -or- Ağ adı bilinmemektedir.
Open()
Çekim için arşiv açılır ve arşiv içeriği ile bir akış sağlar.
public Stream Open()
Returns
Arşiv içeriğini temsil eden akım.
Examples
Arşivi çıkarır ve kaydedilen içeriği dosya akışına kopyalar.
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);
}
}
.NET 4.0 ve üstü için Stream.CopyTo yöntemi kullanabilirsiniz: unpacked.KopyTo(ekstraksiyon);
Remarks
Bir dosyanın orijinal içeriğini almak için akışdan okuyun. örnekler bölümüne bakın.
Save(Stream)
Arşivleri sağlanan akışa kaydeder.
public void Save(Stream outputStream)
Parameters
outputStream
Stream
Amaç akışı.
Examples
Kompres edilen verileri HTTP yanıt akışına yazar.
using (var archive = new GzipArchive())
{
archive.SetSource(new FileInfo("data.bin"));
archive.Save(httpResponse.OutputStream);
}
Remarks
Yazılabilir olması gerekir.
Exceptions
outputStream’ is not writable.
Kaynak sağlanmamıştır.
Save(Sırt)
Arşivleri sağlanan hedef dosyasına kaydeder.
public void Save(string destinationFileName)
Parameters
destinationFileName
string
Dosya adı belirlenmiş bir dosyaya işaret ederse, yeniden yazılacaktır.
Examples
using (var archive = new GzipArchive())
{
archive.SetSource("data.bin");
archive.Save("archive.gz");
}
Exceptions
destinationFileName’ is null.
Müşteri, gerekli izinleri almamaktadır.
destinationFileName’ boş, yalnızca beyaz alanlar içerir veya geçersiz karakterler içerir.
destinationFileName’ dosyasına erişim reddedilir.
Belirlenen destinationFileName’, dosya adı, ya da her ikisi de sistem tarafından belirlenen maksimum uzunluğu aşmaktadır. Örneğin, Windows tabanlı platformlarda, yollar 248 karakterden az olmalıdır ve dosya isimleri 260 karakterden az olmalıdır.
destinationFileName’ dosyası, satırın ortasında bir sütun (:) içerir.
SetSource(Stream)
İçeriği arşiv içinde sıkıştırmak için ayarlayın.
public void SetSource(Stream source)
Parameters
source
Stream
Arşiv için giriş akışı.
Examples
using (var archive = new GzipArchive())
{
archive.SetSource(new MemoryStream(new byte[] { 0x00, 0xFF }));
archive.Save("archive.gz");
}
SetSource(FileInfo)
İçeriği arşiv içinde sıkıştırmak için ayarlayın.
public void SetSource(FileInfo fileInfo)
Parameters
fileInfo
FileInfo
Kompres edilecek bir dosya için referans.
Examples
using (var archive = new GzipArchive())
{
archive.SetSource(new FileInfo("data.bin"));
archive.Save("archive.gz");
}
SetSource(Sırt)
İçeriği arşiv içinde sıkıştırmak için ayarlayın.
public void SetSource(string path)
Parameters
path
string
Dosyayı sıkıştırmanın yolları.
Examples
Dosyadan bir arşiv açın ve yolda çıkarın.
using (var archive = new GzipArchive())
{
archive.SetSource("data.bin");
archive.Save("archive.gz");
}
Exceptions
path’ is null.
Müşteri, gerekli izinleri almamaktadır.
path’ boş, yalnızca beyaz alanlar içerir veya geçersiz karakterler içerir.
path" dosyasına erişim reddedilir.
Belirlenen path’, dosya adı, ya da her ikisi de sistem tarafından tanımlanan maksimum uzunluğu aşmaktadır. Örneğin, Windows tabanlı platformlarda, yollar 248 karakterden az olmalıdır ve dosya isimleri 260 karakterden az olmalıdır.
path’daki dosya, satırın ortasında bir sütun (:) içerir.
SetSource(TarArchive)
İçeriği arşiv içinde sıkıştırmak için ayarlayın.
public void SetSource(TarArchive tarArchive)
Parameters
tarArchive
TarArchive
Arşiv sıkıştırılmalıdır.
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
Bu yöntemi tar.gz arşivini oluşturmak için kullanın.