Membuat File ZIP dari File XML di .NET

Aspose.ZIP untuk .NET memungkinkan aplikasi C# membuat arsip ZIP dari file XML tanpa menjalankan 7-Zip, WinRAR, atau utilitas desktop lainnya. Buat instans Archive, tambahkan setiap sumber dengan CreateEntry, lalu panggil Save untuk menghasilkan paket akhir.

Paket pengembangan dapat mencakup kode, manifes, konfigurasi, sumber daya, pengujian, dan dokumentasi. ZIP membantu mendistribusikan kumpulan yang tepat tanpa menyertakan jalur lokal secara tidak sengaja.

Contoh C#: mengompresi file XML ke ZIP

Contoh ringkas ini menambahkan satu file XML ke arsip baru dan menyimpan hasilnya sebagai archived_result.zip. Atur dir ke direktori yang berisi file sumber.

Kompres File XML - C#

var dir = "full directory path";
using (var arch = new Archive())
{
   arch.CreateEntry("filename.xml", dir+"file.xml");
   arch.Save(dir+"archived_result.zip");
}

Instal Aspose.ZIP untuk .NET

Instal paket NuGet Aspose.ZIP dan tambahkan referensinya ke proyek .NET. Arsip dibuat di dalam proses aplikasi dan tidak memerlukan program ZIP terpisah.

Package Manager Console

PM> Install-Package Aspose.Zip

Arsipkan Satu File XML

Tambahkan sumber ke instans Archive baru lalu simpan hasilnya. Gunakan nama entri yang jelas jika file di dalam ZIP harus mengikuti konvensi yang berbeda dari nama lokalnya.

Gabungkan Beberapa File XML

Panggil CreateEntry untuk setiap sumber sebelum menyimpan arsip. File dari direktori berbeda dapat diatur di bawah direktori src/ yang konsisten di dalam ZIP.

Sertakan Sumber Daya Terkait

Tambahkan file proyek, manifes, konfigurasi, sumber daya, pengujian, dan dokumentasi ke paket. Pertahankan jalur relatif yang dibutuhkan oleh alur kerja penerima.

Simpan atau Kirim ZIP melalui Stream

Simpan arsip ke disk, kembalikan melalui ASP.NET, atau tulis langsung ke penyimpanan melalui stream. Struktur internalnya tetap sama untuk setiap tujuan.

Cara Membuat Arsip ZIP dari File XML di C#

  1. Instal Aspose.ZIP untuk .NET dan tambahkan referensinya ke proyek.
  2. Tentukan file XML dan sumber daya terkait yang akan dimasukkan ke paket.
  3. Buat instans Archive untuk kontainer ZIP baru.
  4. Panggil CreateEntry untuk setiap sumber dan tetapkan jalur yang diinginkan di dalam arsip.
  5. Atur kompresi atau enkripsi jika alur pengiriman memerlukannya.
  6. Panggil Save dengan jalur keluaran atau stream yang dapat ditulis, lalu lepaskan sumber daya.

Tambahkan semua entri sebelum menyimpan. Gunakan CreateEntries untuk direktori yang sudah ditata, atau panggil CreateEntry satu per satu ketika Anda memerlukan kontrol lebih rinci.

Pembuatan ZIP Tidak Mengonversi Format XML

Membuat ZIP adalah operasi pengarsipan, bukan konversi format. Aspose.ZIP tidak mengompilasi, menganalisis, atau memformat kode dan tidak mengubah encoding, akhir baris, maupun konfigurasi. Byte sumber dipertahankan.

Jika aplikasi perlu menganalisis, mengedit, merender, atau mengonversi konten internal, gunakan pustaka khusus untuk format tersebut. Gunakan Aspose.ZIP ketika tujuannya adalah menggabungkan, memindahkan, menyimpan, mengompresi, atau melindungi file yang ada.

Sertakan File Pendamping untuk Sumber XML

Paket lengkap dapat memerlukan file proyek, manifes, konfigurasi, sumber daya, pengujian, dan dokumentasi. Aspose.ZIP hanya menambahkan file yang diberikan oleh aplikasi dan tidak menemukan dependensi khusus format secara otomatis.

Kumpulkan sumber daya yang diperlukan sebelum membuat arsip dan berikan jalur entri relatif yang stabil. Manifes atau README dapat menjelaskan versi, lokasi yang diharapkan, checksum, dan petunjuk pemulihan.

Kontrol Jalur dan Nama di Dalam ZIP XML

Jalur sumber memberi tahu .NET lokasi file yang akan dibaca; nama entri menentukan letaknya di dalam ZIP. Dengan demikian, sumber lokal dapat diterbitkan sebagai `src/filename.xml` tanpa menampilkan direktori absolut komputer.

Gunakan garis miring untuk jalur yang portabel. Tolak jalur absolut, segmen ../, nama kosong, dan duplikat yang tidak diharapkan jika nilai berasal dari luar aplikasi.

Perkiraan Kompresi untuk File XML

Kode dan format teks biasanya terkompresi dengan baik karena pola sintaks yang berulang. Biner atau dependensi yang sudah terkompresi dapat mengurangi penghematan keseluruhan.

Deflate merupakan pilihan praktis untuk kompatibilitas luas. Mode Store dapat dipilih ketika kecepatan pembuatan lebih penting daripada pengurangan ukuran tambahan.

Lindungi ZIP yang Berisi File XML dengan Kata Sandi

Aspose.ZIP dapat melindungi entri menggunakan ZipCrypto tradisional atau enkripsi AES. Pilih AES jika perangkat lunak penerima mendukungnya; gunakan ZipCrypto hanya jika kompatibilitas dengan alat lama benar-benar diperlukan.

Ambil kata sandi dari konfigurasi yang aman, jangan tulis di kode atau log, dan kirimkan melalui saluran terpisah dari arsip. Pastikan penerima dapat membuka metode enkripsi yang dipilih.

Panduan Produksi untuk File XML

- Pastikan setiap sumber dan file pendamping tersedia sebelum menyimpan arsip. - Terapkan batas jumlah file, ukuran, dan lokasi sumber untuk permintaan yang tidak tepercaya. - Normalisasi nama entri dan cegah jalur absolut atau traversal direktori. - Tulis ke lokasi sementara terlebih dahulu dan publikasikan ZIP hanya setelah `Save` selesai. - Gunakan stream untuk respons ASP.NET dan unggahan langsung ke penyimpanan objek. - Lepaskan arsip dan stream secara deterministik, serta jangan mencatat kredensial atau jalur lokal sensitif.

Buat ZIP dari File XML Secara Online

Perlu membuat paket tanpa menulis kode? Gunakan pembuat file ZIP online gratis melalui browser.

  Tidak perlu memasang utilitas arsip desktop.
  Tidak memerlukan kode C# atau konfigurasi API.
  Unggah file XML dan sumber daya terkait.
  Unduh arsip ZIP yang dihasilkan.

Sumber Daya Aspose.ZIP untuk .NET

Pertanyaan yang Sering Diajukan

1. Bagaimana cara membuat file ZIP dari file XML di C#?

Buat instans Archive, panggil CreateEntry dengan nama entri dan jalur sumber XML, lalu gunakan Save dengan file ZIP atau stream tujuan.

2. Dapatkah saya menambahkan beberapa file XML ke satu arsip ZIP?

Ya. Panggil CreateEntry untuk setiap sumber, berikan nama unik pada setiap entri, lalu simpan arsip setelah semua file ditambahkan.

3. Apakah file terkait disertakan secara otomatis?

Tidak. Aspose.ZIP mengarsipkan file yang diberikan aplikasi, tetapi tidak mencari dependensi khusus format. Tambahkan setiap sumber daya yang diperlukan secara eksplisit.

4. Apakah pembuatan ZIP mengonversi atau mengubah file XML?

Tidak. File asli dipertahankan sebagai entri arsip. Konversi format atau pengeditan konten merupakan operasi terpisah.

5. Dapatkah ZIP yang berisi file XML dienkripsi?

Ya. Aspose.ZIP mendukung ZipCrypto dan AES. Pilih metode yang kompatibel dengan perangkat lunak yang digunakan penerima untuk mengekstrak arsip.