![C# ile GZip oluşturun](images/Create-GZip-in-C.jpg#center)
GZip arşivleri (.gz), GNU zip sıkıştırma algoritmasını kullanarak bir veya daha fazla dosyayı sıkıştırmak için kullanılır. UNIX işletim sistemlerinde dosya sıkıştırma için yaygın olarak kullanılır. Bu makalede, C#’te programlı olarak GZip (.gz) kullanarak dosyaları sıkıştırmayı öğreneceksiniz. Ayrıca makale, GZip arşivlerinin C# ile nasıl açılacağını da kapsayacaktır.
- Dosyaları Sıkıştırmak ve Açmak için C# GZip API’si
- C#’ta GZip Kullanarak Dosyaları Sıkıştırın
- Bir GZip Arşivini C# ile Açın
- Bir GZip Arşivini C#’ta Akışa Çıkarın
C# GZip Sıkıştırma ve Açma API’sı - Ücretsiz İndirme
GZip kullanarak dosyaları sıkıştırmak ve açmak için Aspose.ZIP for .NET kullanacağız. ZIP, 7z, GZip vb. gibi popüler arşiv biçimleriyle çalışmanıza izin veren güçlü bir API’dir. API’yi indirebilir veya [NuGet] kullanarak yükleyebilirsiniz. 8.
PM> Install-Package Aspose.Zip
C#’ta GZip Kullanarak Dosyaları Sıkıştırın
C# dilinde GZip kullanarak dosyaları sıkıştırma adımları aşağıdadır.
- GzipArchive sınıfından bir nesne oluşturun.
- Arşive bir dosya eklemek için GzipArchive.SetSource(String) yöntemini kullanın.
- GzipArchive.Save(String) yöntemini kullanarak GZip arşivi oluşturun.
Aşağıdaki kod örneği, dosyaların C# dilinde GZip’e nasıl sıkıştırılacağını gösterir.
using (GzipArchive archive = new GzipArchive())
{
// kaynak ayarla
archive.SetSource("data.bin");
// arşiv oluştur
archive.Save("archive.gz");
}
Bir GZip Arşivini C# ile Açın
Aşağıda, Aspose.ZIP for .NET kullanarak C#’ta bir GZip arşivinin sıkıştırmasını açma adımları yer almaktadır.
- GzipArchive sınıfından bir nesne oluşturun ve onu GZip arşivinin yolu ile başlatın.
- File.Create(String) yöntemini kullanarak ayıklanan içerik için bir dosya oluşturun.
- GZipArchive.Open() yöntemini kullanarak ayıklamak için GZip’i açın.
- Ayıklanan içeriği okuyun ve dosyaya yazın.
Aşağıdaki kod örneği, C# kullanarak bir GZip arşivinin nasıl açılacağını gösterir.
// GZip arşivini yükle
using (var archive = new GzipArchive("archive.gz"))
{
// dosya oluştur
using (var extracted = File.Create("data.bin"))
{
// açık Arşiv
var unpacked = archive.Open();
byte[] b = new byte[8192];
int bytesRead;
// dosyaya yaz
while (0 < (bytesRead = unpacked.Read(b, 0, b.Length)))
extracted.Write(b, 0, bytesRead);
}
}
C# Bir GZip’i Akışa Çıkarın
Bir GZip arşivini bir bellek akışı nesnesine de çıkarabilirsiniz. Aşağıda bu işlemi gerçekleştirmek için adımlar verilmiştir.
- Yeni bir MemoryStream nesnesi oluşturun.
- GzipArchive sınıfından bir nesne oluşturun ve onu GZip arşivinin yolu ile başlatın.
- GZip’i ayıklayın ve GZipArchive.Open().CopyTo(MemoryStream) yöntemini kullanarak bellek akışına kopyalayın.
Aşağıdaki kod örneği, C# kullanarak bir GZip arşivinin bir bellek akışına nasıl çıkarılacağını gösterir.
// bir bellek akışı oluştur
var ms = new MemoryStream();
// GZip arşivini yükle
using (GzipArchive archive = new GzipArchive(File.OpenRead("sample.gz")))
{
// ayıklayın ve bellek akışına kopyalayın
archive.Open().CopyTo(ms);
Console.WriteLine(archive.Name);
}
C# GZip Sıkıştırma ve Açma API’si - Ücretsiz Lisans Alın
API’yi değerlendirme sınırlamaları olmadan kullanmak için ücretsiz bir geçici lisans alabilirsiniz.
Çözüm
Bu makalede, C# dilinde GZip kullanarak dosyaları sıkıştırmayı veya açmayı öğrendiniz. Ayrıca, C# .NET kullanarak programlı olarak akış yapmak için bir GZip’i nasıl çıkaracağınızı gördünüz. Aspose.ZIP for .NET hakkında documentation kullanarak daha fazlasını keşfedebilirsiniz. Ayrıca forumumuz aracılığıyla sorularınızı paylaşmak için bizimle iletişime geçebilirsiniz.