Mit Hilfe von java zu extrahieren .rar-Dateien
Ich Suche eine Möglichkeiten zum entpacken .rar
- Dateien mit Java-und wo ich immer Suche, die ich halten Sie Ende mit dem gleichen Werkzeug - JavaUnRar
. Ich habe auf der Suche in dem entpacken .rar
Dateien mit diese aber alle Möglichkeiten, die ich zu finden scheinen, um dies zu tun sind sehr lang und umständlich wie in dieses Beispiel
Ich bin derzeit in der Lage, zu extrahieren .tar
, .tar.gz
, .zip
und .jar
Dateien in 20 Zeilen code oder weniger, so muss es eine einfachere Art und Weise zu extrahieren .rar
Dateien, weiß jemand?
Nur, wenn es hilft niemanden, das ist der code, den ich verwende-Extrakt sowohl .zip
und .jar
- Dateien, es funktioniert für beide
public void getZipFiles(String zipFile, String destFolder) throws IOException {
BufferedOutputStream dest = null;
ZipInputStream zis = new ZipInputStream(
new BufferedInputStream(
new FileInputStream(zipFile)));
ZipEntry entry;
while (( entry = zis.getNextEntry() ) != null) {
System.out.println( "Extracting: " + entry.getName() );
int count;
byte data[] = new byte[BUFFER];
if (entry.isDirectory()) {
new File( destFolder + "/" + entry.getName() ).mkdirs();
continue;
} else {
int di = entry.getName().lastIndexOf( '/' );
if (di != -1) {
new File( destFolder + "/" + entry.getName()
.substring( 0, di ) ).mkdirs();
}
}
FileOutputStream fos = new FileOutputStream( destFolder + "/"
+ entry.getName() );
dest = new BufferedOutputStream( fos );
while (( count = zis.read( data ) ) != -1)
dest.write( data, 0, count );
dest.flush();
dest.close();
}
}
- Durch die Vielzahl von zipping Dateien, die ich nehme an, Sie sind im linux env. Warum gehst du nicht rufen Sie shell-Befehle von Java aus. Es wird sorter und schneller.
- Nein, ich bin eigentlich mit windows, aber die Anwendung, mit der ich arbeite hat im moment Spezifikationen in der Lage sein, um Sie zu Dekomprimieren .tar.gz Dateien, damit ich es zu tun habe... ich will, dass es ein stand-alone-Anwendung, so dass ich nicht wirklich wollen, zu tun, die Anrufe von außerhalb der Anwendung, wenn ich helfen kann
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sind Sie in der Lage zu extrahieren
.gz
,.zip
,.jar
- Dateien, da Sie Anzahl von Komprimierungs-algorithmen gebaut, in der Java-SDK.Fall mit RAR format ist ein wenig anders. RAR ist ein proprietäre Archiv-Datei-format. RAR-Lizenz nicht zulassen, dass Sie in software-Entwicklungs-tools wie Java-SDK.
Der beste Weg, um unrar werden Ihre Dateien mit 3rd-party-Bibliotheken wie junrar.
Finden Sie einige Verweise zu anderen Java-RAR-Bibliotheken in Frage ALSO RAR-Archive mit java. Auch SO eine Frage Wie zu komprimieren, text-Datei in rar-format mit java-Programm erklärt, mehr auf die verschiedenen workarounds (z.B. mit
Runtime
).Runtime
Methoden im code.Können Sie die Bibliothek verwenden
junrar
Code Beispiel:
können Sie einfach fügen Sie diese maven dependency für Sie code:
und dann diesen code verwenden, zum extrahieren von rar-Datei: