Heim  >  Artikel  >  Java  >  Wie extrahiere ich den Inhalt einer JAR-Datei in ein bestimmtes Verzeichnis?

Wie extrahiere ich den Inhalt einer JAR-Datei in ein bestimmtes Verzeichnis?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-10-27 00:53:31436Durchsuche

How to Extract JAR File Contents into a Specified Directory?

JAR-Dateiinhalte in ein bestimmtes Verzeichnis extrahieren

Problem:

Sie haben eine JAR-Datei und müssen diese extrahieren Inhalte in ein bestimmtes Verzeichnis kopieren. Das Ausführen des Befehls „jar -xf Dateiname.jar“ gibt einen Fehler zurück.

Lösung:

Verwenden eines vorhandenen Beispiels:

  • Lesen Sie diese Anleitung zum Extrahieren von Java-Ressourcen aus JAR- und ZIP-Archiven: https://examples.javacodegeeks.com/core-java/java-util-jar-extract-resources-from-jar-and-zip -archive-example/.

Benutzerdefinierter Code:

Alternativ können Sie den folgenden Code verwenden:

<code class="java">// JAR file to extract
java.util.jar.JarFile jar = new java.util.jar.JarFile(jarFile);

// Extract all entries
java.util.Enumeration enumEntries = jar.entries();
while (enumEntries.hasMoreElements()) {
    // Get the entry
    java.util.jar.JarEntry file = (java.util.jar.JarEntry) enumEntries.nextElement();

    // Create a file object
    java.io.File f = new java.io.File(destDir + java.io.File.separator + file.getName());

    // If the entry is a directory, create it
    if (file.isDirectory()) {
        f.mkdir();
        continue;
    }

    // Otherwise, extract the file
    java.io.InputStream is = jar.getInputStream(file); // Input stream
    java.io.FileOutputStream fos = new java.io.FileOutputStream(f); // Output stream

    // Write the file contents
    while (is.available() > 0) {
        fos.write(is.read());
    }

    // Close streams
    fos.close();
    is.close();
}

// Close the JAR file
jar.close();</code>

Quelle : http://www.devx.com/tips/Tip/22124

Das obige ist der detaillierte Inhalt vonWie extrahiere ich den Inhalt einer JAR-Datei in ein bestimmtes Verzeichnis?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn