Conversion de RAR en ZIP

Si vous souhaitez convertir une archive RAR en ZIP, lisez cet article.

Conversion

L’API Aspose.ZIP fournit la classe RarArchive pour extraire les archives RAR. Il est possible d’extraire une entr�e dans la m�moire sans l’enregistrer dans un stockage interm�diaire et de la transf�rer imm�diatement dans une archive ZIP.

Assurez-vous que vous disposez de suffisamment de m�moire virtuelle pour conserver le contenu de toutes les entr�es.

Transf�rer une entr�e

L’exemple de code suivant montre comment extraire des entr�es d’une archive RAR et les placer imm�diatement dans une archive ZIP. Les entr�es qui sont des r�pertoires sont ajout�es avec une barre oblique pour sp�cifier leur type.

 1try (Archive zip = new Archive()) {
 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}
Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.