
Dalam posting blog ini, kita akan membahas cara mengonversi file ZIP ke format TGZ(tar.gz) menggunakan C#. Mengonversi dari ZIP ke TGZ merupakan tugas umum, terutama saat menangani file terkompresi untuk sistem mirip Unix. Tutorial berikut menyertakan penjelasan langkah demi langkah dan kode yang diperlukan untuk membantu Anda memulai.
Mengapa Mengonversi ZIP ke TGZ?
Anda mungkin perlu mengonversi format ZIP ke TGZ karena berbagai alasan seperti:
Kompatibilitas lintas platform: File TGZ umumnya digunakan pada sistem berbasis Unix (Linux, macOS), sedangkan file ZIP populer di Windows. Mengonversi ZIP ke TGZ memudahkan penanganan file terkompresi di berbagai lingkungan.
Manfaat kompresi: File TGZ umumnya menyediakan rasio kompresi yang lebih baik dibandingkan dengan ZIP, menghemat ruang penyimpanan dan mengurangi waktu transfer.
Mengotomatiskan tugas: Dalam C#, mengotomatiskan konversi format file dapat menghemat waktu dan tenaga, terutama dalam aplikasi yang menangani volume data besar.
Konverter ZIP ke TGZ - Konfigurasi API C#
Anda dapat mengonversi ZIP ke TGZ dengan menginstal Conholdate.Total untuk .NET dengan menjalankan perintah NuGet berikut di Visual Studio IDE:
PM> NuGet\Install-Package Conholdate.Total
Konversi ZIP ke TGZ di C#
Langkah-langkah berikut menunjukkan cara mengonversi ZIP ke TGZ di C#:
Memuat berkas ZIP: Kelas Arsip memuat berkas ZIP sumber yang berisi entri yang ingin Anda ubah ke format TGZ.
Membuat TarArchive: Kita membuat objek TarArchive untuk mulai menyiapkan konten untuk file TGZ.
Memproses Entri: Setiap entri dalam file ZIP diulang. Jika bukan direktori, kami mengekstrak datanya ke dalam MemoryStream.
Menambahkan Entri ke TarArchive: Untuk setiap entri yang valid, metode CreateEntry digunakan untuk menambahkan file ke tarball, bersama dengan data yang disimpan dalam memori.
Menyimpan sebagai TGZ: Metode SaveGzipped dipanggil untuk mengompres dan menyimpan tarball sebagai file .tar.gz.
Potongan kode berikut menampilkan konversi ZIP ke TGZ di C#:
using (Archive source = new Archive("source.zip"))
{
using (Aspose.Zip.Tar.TarArchive tar = new Aspose.Zip.Tar.TarArchive())
{
foreach (ArchiveEntry entry in source.Entries)
{
if (!entry.IsDirectory)
{
MemoryStream mem = new MemoryStream();
entry.Open().CopyTo(mem);
tar.CreateEntry(entry.Name, mem);
}
}
tar.SaveGzipped("result.tar.gz");
}
}
Lisensi Evaluasi Gratis
Anda dapat meminta lisensi sementara gratis untuk menguji konversi ZIP tanpa batasan evaluasi apa pun di lingkungan Anda.
Kesimpulan
Mengonversi ZIP ke TGZ dalam C# merupakan proses sederhana untuk memproses arsip terkompresi. Baik Anda berurusan dengan berbagi file lintas platform atau mengoptimalkan ukuran file, proses konversi ini sangat bermanfaat. Dengan mengikuti contoh kode yang diberikan, Anda dapat mengotomatiskan konversi ZIP ke TGZ dalam aplikasi .NET Anda, memastikan kompatibilitas dan efisiensi dalam mengelola file terkompresi. Jika Anda memiliki pertanyaan, silakan menulis kepada kami di forum.
Tanya Javab Umum
Apakah format TGZ didukung pada Windows?
Ya, meskipun lebih umum pada sistem berbasis Unix, file TGZ juga dapat diekstraksi dan dibuat di Windows.
Bisakah saya menyertakan direktori dalam arsip TGZ?
Ya, kode dapat dimodifikasi untuk menyertakan direktori dengan menghapus pemeriksaan !entry.IsDirectory dan menangani direktori sebagaimana mestinya.
Apakah mungkin untuk mengotomatiskan konversi ZIP ke TGZ?
Ya, kode yang disediakan dapat diintegrasikan ke dalam aplikasi C# yang lebih besar, memungkinkan konversi otomatis dalam tugas batch atau terjadwal.