Sto cercando di estrarre dei file zippati e protetti da password
con un mio programmino in java.
Con questo codice sono riuscito ad estrarre un file normale (non
protetto da password)
Se però cerco di estrarre un file protetto da password alloracodice:import java.io.*; import java.io.IOException.*; import java.util.zip.*; class Zip { public static void main (String[] args) { System.out.println("Sto cercando di estrarre il file 'archivio.dat' dal file 'archivio.zip'"); unzippaArchivio(); } public static void unzippaArchivio() { File zip = new File("archivio.zip"); if(zip.exists()) { try { FileInputStream in = new FileInputStream("archivio.zip"); RandomAccessFile fArchivio = new RandomAccessFile("archivio.dat","rw"); ZipInputStream inZip = new ZipInputStream(in); byte[] b = new byte[1]; int i = 0; try{inZip.getNextEntry();} catch(IOException ez) {System.out.println("Errore: "+ez);} try{i=inZip.available();} catch(IOException ez) {System.out.println("Errore: "+ez);} while(i==1) { try{inZip.read(b, 0, 1);} catch(IOException ez) {System.out.println("Errore: "+ez);} try{i=inZip.available();} catch(IOException ez) {System.out.println("Errore: "+ez);} if(i==1){try {fArchivio.write(b,0,1);} catch(IOException e) {System.out.println("Errore: "+e);}} } try {fArchivio.close();} catch(IOException e) {System.out.println("Errore: "+e);} try{inZip.closeEntry();} catch(IOException ez) {System.out.println("Errore: "+ez);} try{inZip.close();} catch(IOException ez) {System.out.println("Errore: "+ez);} } catch(FileNotFoundException ezz) {System.out.println("Errore: "+ezz);} } else {System.out.println("File 'archivio.zip' non trovato!!! ritenta sarai più fortunato.");} } }
mi dice che non supporta i file criptati.
Qualcuono di vuoi conosce un modo per ovviare a questo problema?

Rispondi quotando
