Rumah >Java >javaTutorial >Bagaimanakah Saya Boleh Menambah Fail dengan Cekap pada Fail Zip di Java?

Bagaimanakah Saya Boleh Menambah Fail dengan Cekap pada Fail Zip di Java?

DDD
DDDasal
2024-11-21 05:56:11860semak imbas

How Can I Efficiently Append Files to a Zip File in Java?

Menambahkan Fail pada Fail Zip di Java: Meneroka Kaedah Cekap

Apabila bekerja dengan fail perang, adalah perkara biasa untuk mengekstrak kandungannya, tambah fail baharu, dan kemudian buat fail perang baharu. Walau bagaimanapun, proses ini boleh memakan masa kerana keperluan untuk pengembangan dan pemampatan semula.

Satu alternatif yang cekap untuk dipertimbangkan ialah menambahkan fail pada fail perang secara terus. Walaupun dokumentasi Java tidak memberikan panduan yang jelas tentang perkara ini, terdapat perpustakaan luaran yang membolehkan fungsi ini.

TrueZip dan Perpustakaan Serupa

TrueZip ialah perpustakaan Java yang popular untuk memanipulasi fail zip. Ia menyokong penambahan fail pada arkib zip, menjadikannya penyelesaian yang sesuai untuk senario yang diterangkan. Berikut ialah contoh menggunakan TrueZip:

ZipFile zipFile = new ZipFile("test.war");
zipFile.addFile("new.txt", new File("new.txt"));
zipFile.close();

Java 7 ジップファイルシステム機能

Mekanisme manipulasi Java 7 menyediakan mekanisme ZipIn File System 7 asli zip fail sebagai a sistem fail. Ini membolehkan penulisan terus dan pengubahsuaian fail dalam zip tanpa perlu membungkus semula keseluruhan fail.

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");
  }
}

Sistem Fail Java 7 Zip ialah pendekatan yang berkuasa dan cekap untuk menambahkan fail pada arkib zip. Walau bagaimanapun, untuk versi Java yang lebih lama, perpustakaan luaran seperti TrueZip boleh mengisi jurang fungsi ini.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menambah Fail dengan Cekap pada Fail Zip di Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn