Menambahkan Fail ke ZIP di Java
Mencari alternatif kepada pendekatan konvensional untuk mengekstrak, mengubah suai dan mencipta semula fail perang, anda meneroka kemungkinan menambahkan fail terus ke fail perang sedia ada.
Native Sokongan Java
Java 7 memperkenalkan Sistem Fail Zip, yang menyediakan keupayaan untuk menambah dan mengubah suai fail dalam arkib ZIP tanpa memerlukan pembungkusan semula manual. Dengan menggunakan API ini, anda boleh menulis terus ke fail dalam fail ZIP, seperti yang dipamerkan dalam coretan kod berikut:
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"); } }
Kaedah ini memintas proses yang memakan masa untuk mengekstrak dan memampatkan semula fail perang, mengakibatkan ketara keuntungan kecekapan.
Pihak Ketiga Perpustakaan
Walaupun sokongan asli Java berkesan, terdapat juga perpustakaan pihak ketiga yang menawarkan fungsi tambahan, seperti TrueZip. TrueZip menyediakan set ciri yang komprehensif untuk bekerja dengan fail ZIP, termasuk keupayaan untuk menambah fail dan mengekstrak kandungannya. Perpustakaan terkenal lain termasuk:
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menambah Fail ke Arkib ZIP di Java Tanpa Penciptaan Semula?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!