Ringkasan
Dalam beberapa situasi, perlu untuk menghapus file dari arsip secara selektif. Penghapusan dapat dilakukan berdasarkan mask atau kriteria lainnya.Aspose.ZIP mendukung penghapusan selektif dari beberapa format.
Python Hapus File Dari Arsip ZIP
Metode delete_entry digunakan untuk menghapus seluruh entri dari arsip ZIP. Operasi ini bersifat independen dan tidak memerlukan pemrosesan ulang seluruh arsip.
Entri arsip ZIP dapat dihapus menggunakan sepasang metode
DeleteEntry
. Penghapusan entri terjadi tanpa pengemasan ulang, sehingga entri lainnya tetap tidak berubah tanpa didekompresi dan dikompresi ulang.
with zp.Archive("archive.zip") as archive:
while len(archive.entries) > 1:
archive.delete_entry(archive.entries[0])
archive.save("last_entry.zip")
Kode ini memproses arsip ZIP "archive.zip" yang ada. Ini secara berturut-turut menghapus semua entri kecuali yang terakhir, secara efektif membuat arsip baru bernama "last_entry.zip" yang hanya berisi file yang tersisa.
Hapus File Dari TAR
Metode delete_entry juga efektif untuk menghapus entri dari arsip TAR. Proses ini beroperasi secara independen, sehingga menghilangkan kebutuhan untuk memproses ulang seluruh arsip. Dengan menggunakan metode delete_entry untuk file TAR, seperti yang ditunjukkan pada contoh di bawah, entri dapat dihapus dengan lancar, memastikan bahwa entri yang tersisa tidak terpengaruh dan tidak mengalami dekompresi atau kompresi ulang.
with zp.tar.TarArchive("two_files.tar") as archive:
archive.delete_entry(0)
archive.save("single_file.tar")
Jika Anda ingin menghapus entri dari tar terkompresi (*.tar.gz), Anda perlu mendekompresinya menjadi *.tar biasa.
CPIO Hapus File Dari Arsip
Entri dapat dihapus dari CPIO mirip dengan TAR.
with zp.cpio.CpioArchive("two_files.cpio") as archive:
archive.delete_entry(archive.entries[0]).save("single_file.cpio")
Ingat, metode delete_entry mengembalikan contoh arsip. Ini akan membantu Anda membuat kode Anda lebih ringkas dalam beberapa kasus.
Hapus Dari File XAR
Arsip Xar juga memiliki metode penghapusan entri tunggal delete_entry.
Dalam contoh ini semua entri dihapus kecuali yang terakhir.
with zp.xar.XarArchive("archive.xar") as archive:
while len(archive.entries) > 1:
archive.delete_entry(0)
archive.save("last.xar")
Contoh ini menampilkan pemrosesan terisolasi, yang berarti memodifikasi arsip tanpa memengaruhi status kompresi entri yang tersisa. Kode ini secara berulang menghapus entri dari "archive.xar" hingga hanya tersisa satu entri. Terakhir, arsip yang dihasilkan disimpan sebagai "last.xar".
Aspose.ZIP Lain yang Didukung untuk Fitur API Python.Net
Dengan pustaka Aspose.ZIP di Python.Net, Anda dapat menangani berbagai tugas yang terkait dengan dokumen file ZIP dengan lancar. Baik Anda perlu mengonversi format, menggabungkan file, mengedit konten, atau mengekstrak data, Aspose.ZIP menyediakan fungsionalitas komprehensif untuk menyederhanakan alur kerja Anda dan meningkatkan produktivitas.
Support and Learning Resources
- Sumber Belajar
- Dokumentasi
- Kode sumber
- Referensi API
- Dukungan Produk
- Dukungan Gratis
- Dukungan Berbayar
- Blog
- Catatan Rilis
- Mengapa Aspose.Zip untuk Python.Net?
- Daftar Pelanggan
- Cerita-cerita sukses