Ich versuche eine Datei mit Java zu entpacken, aber der folgende Code kommt nicht in die while-Schleife, da 'ze' null ist. Allerdings kann ich dieselbe Datei mit der 7zip-Anwendung entpacken. Kann mir jemand sagen, warum ist das so gut?Es ist nicht möglich, eine Datei mit Java zu entzippen, aber mit 7zip zu entpacken.
try {
//get the zip file content
ZipInputStream zis =
new ZipInputStream(new FileInputStream(zipFile));
//get the zipped file list entry
ZipEntry ze = zis.getNextEntry();
while(ze!=null){
String fileName = ze.getName();
File newFile = new File(outputFolder + File.separator + fileName);
System.out.println("file unzip : "+ newFile.getAbsoluteFile());
//create all non exists folders
//else you will hit FileNotFoundException for compressed folder
new File(newFile.getParent()).mkdirs();
FileOutputStream fos = new FileOutputStream(newFile);
int len;
while ((len = zis.read(buffer)) > 0) {
fos.write(buffer, 0, len);
}
fos.close();
ze = zis.getNextEntry();
}
zis.closeEntry();
zis.close();
System.out.println("Done");
}catch(IOException ex){
ex.printStackTrace();
}
Ist es eine .7z-Datei oder eine .zip-Datei? – AJNeufeld