Rumah >Java >javaTutorial >Bagaimana untuk Membaca Fail dari JAR di Java?

Bagaimana untuk Membaca Fail dari JAR di Java?

Patricia Arquette
Patricia Arquetteasal
2024-12-17 03:28:25275semak imbas

How to Read Files from a JAR in Java?

Membaca Fail dari JAR dalam Java

Apabila bekerja dengan aplikasi Java, mungkin perlu mengakses fail yang disimpan dalam JAR (Java Arkib) fail. Fail JAR ialah cara mudah untuk membungkus berbilang kelas, sumber dan fail konfigurasi ke dalam satu arkib. Jika aplikasi Java anda perlu berinteraksi dengan fail XML yang terkandung dalam fail JAR, kaedah berikut boleh digunakan:

Menggunakan Kaedah getResourceAsStream()

Kaedah ini membenarkan anda untuk mendapatkan InputStream yang mewakili kandungan fail yang ditentukan dalam JAR. Sintaks adalah seperti berikut:

InputStream input = getClass().getResourceAsStream("/path/to/file.xml");

Dalam contoh ini, "path/to/file.xml" mewakili laluan relatif kepada fail XML dalam JAR. Laluan harus bermula dengan garis miring (/) di hadapan untuk menunjukkan bahawa ia adalah laluan sumber.

Setelah anda memperoleh InputStream, anda boleh membaca kandungan fail menggunakan teknik pemprosesan input standard.

Contoh:

InputStream input = getClass().getResourceAsStream("/myproject/data.xml");
BufferedReader reader = new BufferedReader(new InputStreamReader(input));
String line;
while ((line = reader.readLine()) != null) {
    // Process each line
}

Menggunakan JarFile Kelas

Sebagai alternatif, anda boleh menggunakan kelas JarFile untuk mengakses terus kandungan fail JAR.

Contoh:

JarFile jarFile = new JarFile("myproject.jar");
ZipEntry entry = jarFile.getEntry("data.xml");
InputStream input = jarFile.getInputStream(entry);
// Process the input stream

Dengan menggunakan kaedah ini, anda boleh membaca dan memproses fail yang disimpan dengan berkesan dalam fail JAR dalam aplikasi Java anda.

Atas ialah kandungan terperinci Bagaimana untuk Membaca Fail dari JAR 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