Konversi Zip melalui C#

ubah ZIP ke Berbagai Format Arsip File

Cara Mengonversi Zip Menggunakan C#

Mengonversi file ZIP menggunakan C# dapat difasilitasi dengan Aspose.Zip untuk .NET, sebuah API canggih yang menyederhanakan prosesnya. Pustaka ini memungkinkan pengembang untuk melakukan berbagai operasi, termasuk ekstraksi dan pembuatan file ZIP, bersama dengan perlindungan kata sandi dan penyesuaian tingkat kompresi. Dengan menggunakan metode relevan yang disediakan oleh Aspose.Zip, pengembang dapat dengan mudah menangani konversi file ZIP dalam banyak format file arsip populer seperti RAR , CPIO , CAB , TAR dan lainnya.

Konversi satu arsip ke arsip lainnya pada dasarnya merupakan kombinasi dari pembongkaran arsip pertama dan komposisi arsip kedua. Anda dapat menyimpan data sementara yang diekstraksi di RAM tanpa membuangnya ke disk. Waspadai konsumsi memori dan ketahui berapa banyak memori yang dapat Anda alokasikan untuk menyimpan entri-entri ini.

Panduan Pengembang - Konversi Arsip

Cuplikan kode yang disediakan menunjukkan cara mengonversi arsip RAR ke format ZIP di C#. Ini menggunakan perpustakaan Aspose.Zip untuk dengan mudah mengekstrak entri RAR dan kemudian membuat entri yang sesuai dalam arsip ZIP.

Mari kita tinjau contoh ini langkah demi langkah:

  1. Instantiate ZIP Archive disiapkan untuk kompresi. Kami akan mengisinya dengan entri pada langkah selanjutnya.
  2. Instantiate Rar Archive disiapkan untuk dekompresi, menyediakan jalur ke arsip.
  3. Ekstrak setiap entri ke penyimpanan sementara.
  4. Tulis entri zip dari penyimpanan itu. Jika entri tersebut mewakili direktori, kami hanya menggunakan jalurnya.
  5. Simpan arsip ke jalur yang disediakan.

Konversi dari RAR ke ZIP

Cuplikan kode yang disediakan menunjukkan cara mengonversi arsip RAR ke format ZIP di C#. Ini menggunakan perpustakaan Aspose.Zip untuk dengan mudah mengekstrak entri RAR dan kemudian membuat entri yang sesuai dalam arsip ZIP.

  using (Archive zip = new Archive())
  {
    using (RarArchive rar = new RarArchive("archive.rar"))
    {
      for (int i = 0; i < rar.Entries.Count; i++)
      {
        if (!rar.Entries[i].IsDirectory)
        {
          var ms = new MemoryStream();
          rar.Entries[i].Extract(ms);
          ms.Seek(0, SeekOrigin.Begin);
          zip.CreateEntry(rar.Entries[i].Name, ms);
        }
        else
          zip.CreateEntry(rar.Entries[i].Name + "/", Stream.Null);
      }
    }

    zip.Save("output.zip");
  }

Konversi dari ZIP ke 7Z

Cuplikan kode menampilkan konversi arsip ZIP ke format 7Z melalui C#. Memanfaatkan pustaka SevenZipArchive, skrip mengekstrak entri ZIP dan membuat entri terkait di arsip 7Z.

Mari kita tinjau contoh ini langkah demi langkah:

1. Instantiasi arsip 7z disiapkan untuk kompresi. Kami akan mengisinya dengan entri pada langkah berikutnya.
2. Instantiate arsip ZIP disiapkan untuk dekompresi, menyediakan jalur ke arsip.
3. Ekstrak setiap entri ke penyimpanan sementara.
4. Tulis entri 7z dari penyimpanan itu.
5. Simpan arsip ke jalur yang disediakan.

  using (SevenZipArchive sevenZipArchive =  new SevenZipArchive())
  {
    using (Archive archive = new Archive("source.zip"))
    {
      for (int i = 0; i < archive.Entries.Count; i++)
      {
        var ms = new MemoryStream();
        archive.Entries[i].Extract(ms);
        ms.Seek(0, SeekOrigin.Begin);
        sevenZipArchive.CreateEntry(archive.Entries[i].Name.Replace('\\', '/'), ms);
      }
    }

    sevenZipArchive.Save("output.7z");
  }

Konversi dari file TAR.GZ ke ZIP

Cuplikan kode yang disediakan di sini menunjukkan konversi file TAR.GZ (GZIP) ke format ZIP melalui C#. Kelas TarArchive memiliki metode yang mudah untuk beroperasi dengan arsip tarball terkompresi, terutama yang di-gzip, skrip mengekstrak entri dari file TAR.GZ dan membuat entri yang sesuai di arsip ZIP.

using (Archive zip = new Archive())
{
  using (TarArchive archive = TarArchive.FromGZip("source.tar.gz"))
  {
  for (int i = 0; i < archive.Entries.Count; i++)
  {
    var ms = new MemoryStream();
    archive.Entries[i].Extract(ms);
    ms.Seek(0, SeekOrigin.Begin);
    zip.CreateEntry(archive.Entries[i].Name, ms);
    }
  }
  zip.Save("output.zip");
}

Fungsi konversi dalam dokumentasi

Aspose.Zip .NET API dikenal dengan kemampuannya yang kuat untuk menangani konversi arsip yang kompleks, memungkinkan transformasi tanpa batas antara berbagai format arsip dengan efisiensi dan keandalan maksimal. Dengan kemampuan untuk mengkonversi file ZIP ke format arsip populer lainnya dan sebaliknya, pengembang dapat memastikan integritas data dan kinerja optimal di berbagai platform dan aplikasi. Fitur konversi penting ini menyederhanakan proses transfer data, penyimpanan, dan berbagi, memungkinkan kompatibilitas yang lancar dengan beragam lingkungan perangkat lunak. Dengan memanfaatkan Aspose.Zip .NET API, pengguna dapat dengan mudah memanipulasi file arsip dan memfasilitasi integrasi tanpa batas dengan aplikasi yang mereka inginkan, sehingga meningkatkan produktivitas dan efisiensi alur kerja. Namespace ZIP berisi kelas yang mewakili arsip zip dan entitas terkait arsip umum.

Menginstal Aspose.Zip untuk perpustakaan .NET

Jika Anda telah menggunakan penginstal MSI untuk menerapkan Aspose.ZIP, ikuti langkah-langkah berikut untuk menghapus sepenuhnya komponen serta demo dan dokumentasi terkait:

  1. Dari menu Start, pilih Settings diikuti oleh Control Panel.
  2. Klik Tambah/Hapus Program.
  3. Pilih Aspose.ZIP.
  4. Klik tombol Ubah/Hapus untuk menghapus Aspose.ZIP.
    Untuk detail selengkapnya tentang instalasi pustaka C#, silakan lihat Dokumentasi Aspose.ZIP .

Konversi file arsip yang didukung lainnya

Anda juga dapat mengonversi file CAB, RAR, TAR, CPIO, TAR.BZ2, TAR.GZ, TAR.LZ, TAR.XZ, TAR.Z ke dalam banyak format file lainnya termasuk beberapa format file yang tercantum di bawah ini: