Menambah Fail pada Fail ZIP dalam Java: Teknik Lanjutan
Mencari kaedah yang cekap untuk menambahkan fail ke fail ZIP di Java, a pembangun menghubungi komuniti untuk mendapatkan bimbingan. Tugas itu melibatkan pengubahsuaian fail WAR dengan mengekstrak kandungannya, menambah fail baharu dan mencipta semula fail WAR.
Pihak yang bertanya pada mulanya bercadang untuk menyalin fail WAR dan menambahkan fail terus untuk meningkatkan kecekapan. Walau bagaimanapun, disebabkan kekurangan penyelesaian yang jelas dalam dokumentasi Java atau sumber dalam talian, pembangun mencari pendekatan alternatif.
Penyelesaian: Sistem Fail Zip Java 7
Melalui kebijaksanaan masyarakat, ia mendedahkan bahawa Java 7 memperkenalkan ciri mengubah permainan yang dipanggil Sistem Fail Zip. Kejayaan ini membolehkan penambahan lancar dan pengubahsuaian fail dalam fail ZIP (JAR, WAR) tanpa memerlukan pembungkusan semula manual.
Dengan menggunakan Sistem Fail Zip, pembangun boleh menulis terus ke fail yang terdapat dalam arkib ZIP. Berikut ialah coretan kod ilustrasi:
Map<String, String> env = new HashMap<>(); env.put("create", "true"); Path path = Paths.get("test.zip"); URI uri = URI.create("jar:" + path.toUri()); try (FileSystem fs = FileSystems.newFileSystem(uri, env)) { Path nf = fs.getPath("new.txt"); try (Writer writer = Files.newBufferedWriter(nf, StandardCharsets.UTF_8, StandardOpenOption.CREATE)) { writer.write("hello"); } }
Dalam contoh ini, fail "new.txt" dicipta dan diisi dengan mesej "hello" dalam arkib "test.zip". Kaedah yang elegan dan cekap ini menyediakan penyelesaian yang berkuasa untuk menambahkan fail pada fail ZIP.
TrueZip: Perpustakaan Alternatif
Sebagai tindak balas kepada kemas kini daripada penyiasat asal, komuniti mengesyorkan menyiasat TrueZip sebagai penyelesaian yang berpotensi. TrueZip ialah perpustakaan Java teguh yang direka khusus untuk memanipulasi fail ZIP. Ia menawarkan suite ciri yang komprehensif, termasuk keupayaan untuk menambahkan fail pada arkib ZIP sedia ada.
Perpustakaan lain yang disebut dalam perbincangan termasuk:
Perpustakaan ini melengkapkan pembangun dengan pelbagai pilihan untuk melaksanakan prestasi lanjutan Operasi fail ZIP dalam aplikasi Java mereka.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menambah Fail dengan Cekap ke Arkib ZIP di Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!