Konvertierung von RAR in ZIP
Contents
[
Hide
Show
]Wenn Sie ein RAR-Archiv in ein ZIP-Archiv konvertieren wollen, lesen Sie diesen Artikel.
Konvertierung
Aspose.ZIP API bietet die Klasse RarArchive zum Extrahieren von RAR-Archiven. Wir k�nnen einen Eintrag in den Speicher extrahieren, ohne ihn in einem Zwischenspeicher zu speichern, und ihn sofort in ein ZIP-Archiv �bertragen.
Stellen Sie sicher, dass Sie �ber gen�gend virtuellen Speicher verf�gen, um den Inhalt aller Eintr�ge zu speichern.
Eintrag �bertragen
Das folgende Codebeispiel zeigt, wie Eintr�ge aus einem RAR-Archiv extrahiert und sofort in ein ZIP-Archiv �bertragen werden k�nnen. Eintr�ge, die Verzeichnisse sind, werden mit einem angeh�ngten Schr�gstrich versehen, um ihre Art anzugeben.
1try (Archiv zip = new Archiv()) {
2 try (RarArchive rar = new RarArchive("D:\\archvie.rar")) {
3 for (int i = 0; i < rar.getEntries().size(); i++) {
4 RarArchiveEntry entry = rar.getEntries().get(i);
5 if (!entry.isDirectory()) {
6 try (ByteArrayOutputStream out = new ByteArrayOutputStream()) {
7 entry.extract(out);
8 try (ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray())) {
9 zip.createEntry(entry.getName(), in);
10 }
11 }
12 } else {
13 zip.createEntry(entry.getName() + "/", new ByteArrayInputStream(new byte[0]));
14 }
15 }
16 }
17 zip.save("output.zip");
18} catch (IOException ex) {
19 System.out.println(ex);
20}