Class GzipArchive

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

object GzipArchive

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

ArgumentNullException

sourceStream’ is null.

EndOfStreamException

sourceStream’ is too short.

InvalidDataException

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

ArgumentNullException

path’ is null.

SecurityException

Müşteri, gerekli izinleri almamaktadır.

ArgumentException

path’ boş, yalnızca beyaz alanlar içerir veya geçersiz karakterler içerir.

UnauthorizedAccessException

path" dosyasına erişim reddedilir.

PathTooLongException

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.

NotSupportedException

path’daki dosya, satırın ortasında bir sütun (:) içerir.

EndOfStreamException

Dosya çok kısa.

InvalidDataException

Dosyadaki bilgiler yanlış imzalanmıştır.

Properties

Name

Orijinal bir dosyanın adı.

public string Name { get; }

Mülkiyet Değer

string

UncompressedSize

Orijinal bir dosya boyutunu alır.

public ulong UncompressedSize { get; }

Mülkiyet Değer

ulong

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

ArgumentException

destination’ does not support writing.

InvalidDataException

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

FileInfo

Çekilen dosyaların bilgisi.

Exceptions

ArgumentNullException

path’ is null.

SecurityException

Müşteri, gerekli izinleri almamaktadır.

ArgumentException

path’ boş, yalnızca beyaz alanlar içerir veya geçersiz karakterler içerir.

UnauthorizedAccessException

path" dosyasına erişim reddedilir.

PathTooLongException

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.

NotSupportedException

path’daki dosya, satırın ortasında bir sütun (:) içerir.

InvalidDataException

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

ArgumentNullException

destinationDirectory’ is null.

PathTooLongException

Örneğin, Windows tabanlı platformlarda, yollar 248 karakterden az olmalıdır ve dosya isimleri 260 karakterden az olmalıdır.

SecurityException

Çağrıcı, mevcut dizinlere erişmek için gerekli izinlere sahip değildir.

NotSupportedException

Eğer dizin yoksa, yol bir sürücü etiketinin bir parçası olmayan bir kolon karakterini (:) içerir (“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

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

Stream

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

ArgumentException

outputStream’ is not writable.

InvalidOperationException

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

ArgumentNullException

destinationFileName’ is null.

SecurityException

Müşteri, gerekli izinleri almamaktadır.

ArgumentException

destinationFileName’ boş, yalnızca beyaz alanlar içerir veya geçersiz karakterler içerir.

UnauthorizedAccessException

destinationFileName’ dosyasına erişim reddedilir.

PathTooLongException

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.

NotSupportedException

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

ArgumentNullException

path’ is null.

SecurityException

Müşteri, gerekli izinleri almamaktadır.

ArgumentException

path’ boş, yalnızca beyaz alanlar içerir veya geçersiz karakterler içerir.

UnauthorizedAccessException

path" dosyasına erişim reddedilir.

PathTooLongException

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.

NotSupportedException

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.

 Türkçe