Rumah >Java >javaTutorial >Bagaimana untuk Membongkar Fail JAR ke dalam Direktori Khusus di Java?

Bagaimana untuk Membongkar Fail JAR ke dalam Direktori Khusus di Java?

Susan Sarandon
Susan Sarandonasal
2024-11-03 16:45:03354semak imbas

How to Unpack a JAR File into a Specific Directory in Java?

Mengekstrak Kandungan Fail JAR ke dalam Direktori Tertentu

Masalah:

Anda ingin membangunkan program Java yang boleh membongkar fail JAR ke dalam direktori yang ditetapkan, serupa dengan fungsi membuka zip arkib. Walau bagaimanapun, menjalankan arahan "jar -xf filename.jar" mengakibatkan ralat.

Penyelesaian:

Pertimbangkan pendekatan berikut:

Menggunakan Sumber daripada Arkib ZIP/JAR

Rujuk contoh ini: https://stackoverflow.com/questions/1356436/how-to-extract-java-resources-from-jar-and- zip-archive

Pengeluaran Programatik

Laksanakan kod di bawah:

<code class="java">java.util.jar.JarFile jar = new java.util.jar.JarFile(jarFile);
java.util.Enumeration enumEntries = jar.entries();
while (enumEntries.hasMoreElements()) {
    java.util.jar.JarEntry file = (java.util.jar.JarEntry) enumEntries.nextElement();
    java.io.File f = new java.io.File(destDir + java.io.File.separator + file.getName());
    if (file.isDirectory()) { // if its a directory, create it
        f.mkdir();
        continue;
    }
    java.io.InputStream is = jar.getInputStream(file); // get the input stream
    java.io.FileOutputStream fos = new java.io.FileOutputStream(f);
    while (is.available() > 0) {  // write contents of 'is' to 'fos'
        fos.write(is.read());
    }
    fos.close();
    is.close();
}
jar.close();</code>

Sumber: https://www .devx.com/tips/Tip/22124

Atas ialah kandungan terperinci Bagaimana untuk Membongkar Fail JAR ke dalam Direktori Khusus 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