Arsip GZip (.gz) digunakan untuk mengompresi satu atau lebih file menggunakan algoritme kompresi zip GNU. Ini biasanya digunakan untuk kompresi file di sistem operasi UNIX. Pada artikel ini, Anda akan mempelajari cara mengompres file menggunakan GZip (.gz) secara terprogram di C#. Selain itu, artikel ini juga akan membahas cara mendekompresi arsip GZip di C#.
- C# GZip API untuk Kompres dan Dekompresi File
- Kompres File menggunakan GZip di C#
- Dekompresi Arsip GZip di C#
- Ekstrak Arsip GZip ke Stream di C#
API Kompresi dan Dekompresi C# GZip - Unduhan Gratis
Untuk mengompresi dan mendekompres file menggunakan GZip, kami akan menggunakan Aspose.ZIP for .NET. Ini adalah API yang kuat yang memungkinkan Anda bekerja dengan format arsip populer termasuk ZIP, 7z, GZip, dll. Anda dapat mengunduh API atau menginstalnya menggunakan NuGet.
PM> Install-Package Aspose.Zip
Kompres File menggunakan GZip di C#
Berikut adalah langkah-langkah untuk mengkompres file menggunakan GZip di C#.
- Buat objek dari kelas GzipArchive.
- Gunakan metode GzipArchive.SetSource(String) untuk menambahkan file ke arsip.
- Buat arsip GZip menggunakan metode GzipArchive.Save(String).
Contoh kode berikut menunjukkan cara mengompres file ke GZip di C#.
using (GzipArchive archive = new GzipArchive())
{
// mengatur sumber
archive.SetSource("data.bin");
// membuat arsip
archive.Save("archive.gz");
}
Dekompresi Arsip GZip di C#
Berikut adalah langkah-langkah untuk mendekompres arsip GZip di C# menggunakan Aspose.ZIP for .NET.
- Buat objek dari kelas GzipArchive dan inisialisasi dengan jalur arsip GZip.
- Buat file untuk konten yang diekstrak menggunakan metode File.Create(String).
- Buka GZip untuk ekstraksi menggunakan metode GZipArchive.Open().
- Baca konten yang diekstraksi dan tulis ke file.
Contoh kode berikut menunjukkan cara mendekompresi arsip GZip menggunakan C#.
// memuat arsip GZip
using (var archive = new GzipArchive("archive.gz"))
{
// membuat file
using (var extracted = File.Create("data.bin"))
{
// buka arsip
var unpacked = archive.Open();
byte[] b = new byte[8192];
int bytesRead;
// menulis ke file
while (0 < (bytesRead = unpacked.Read(b, 0, b.Length)))
extracted.Write(b, 0, bytesRead);
}
}
C# Ekstrak GZip ke Stream
Anda juga dapat mengekstrak arsip GZip ke dalam objek aliran memori. Berikut ini adalah langkah-langkah untuk melakukan operasi ini.
- Buat objek MemoryStream baru.
- Buat objek kelas GzipArchive dan inisialisasi dengan jalur arsip GZip.
- Ekstrak GZip dan salin ke aliran memori menggunakan metode GZipArchive.Open().CopyTo(MemoryStream).
Contoh kode berikut menunjukkan cara mengekstrak arsip GZip ke aliran memori menggunakan C#.
// membuat aliran memori
var ms = new MemoryStream();
// memuat arsip GZip
using (GzipArchive archive = new GzipArchive(File.OpenRead("sample.gz")))
{
// ekstrak dan salin ke aliran memori
archive.Open().CopyTo(ms);
Console.WriteLine(archive.Name);
}
API Kompresi dan Dekompresi C# GZip - Dapatkan Lisensi Gratis
Anda bisa mendapatkan lisensi sementara gratis untuk menggunakan API tanpa batasan evaluasi.
Kesimpulan
Pada artikel ini, Anda telah mempelajari cara mengompresi atau mendekompres file menggunakan GZip di C#. Selain itu, Anda telah melihat cara mengekstrak GZip untuk streaming secara terprogram menggunakan C# .NET. Anda dapat mempelajari lebih lanjut tentang Aspose.ZIP for .NET menggunakan dokumentasi. Selain itu, Anda dapat menghubungi kami untuk menyampaikan pertanyaan Anda melalui forum kami.