Buscar
Social
Ofertas laborales ES

Foro sobre Java SE > Error al leer un zip

Estoy intentando la apertura y lectura del contenido de un archivo zip. En el ejemplo abro un archivo que contiene 4 archivos comprimidos, cuando lee el ultimo de ellos da un error.
Aqui os dejo el codigo y la salida:

import java.io.FileInputStream;
import java.io.IOException;
import java.util.zip.ZipEntry;
import java.util.zip.ZipInputStream;


public class AbrirZip {
public static void main(String[] args){
FileInputStream myFile = null;
ZipInputStream zip = null;
ZipEntry archivoZip = null;

try{
myFile = new FileInputStream("prueba.zip");
zip = new ZipInputStream(myFile);


while((archivoZip =zip.getNextEntry()) != null){
System.out.println(archivoZip.getName());

zip.closeEntry();

}
}catch(IOException e){
System.out.println("Could not read file: " + e.toString());
}finally{
if(myFile != null){
try{
zip.close();
myFile.close();
}catch(Exception e1){
e1.printStackTrace();
}
}
}
}

Salida:

LEER - README.txt
setup.exe
SickTown.com.url
Exception in thread "main" java.lang.IllegalArgumentException: MALFORMED
at java.util.zip.ZipCoder.toString(Unknown Source)
at java.util.zip.ZipInputStream.readLOC(Unknown Source)
at java.util.zip.ZipInputStream.getNextEntry(Unknown Source)
at AbrirZip.main(AbrirZip.java:18)

febrero 2, 2013 | Registered Commenterelorian