clase pública UnZipper {
/**
* La función de descomprimir archivos al directorio actual equivale a hacer clic derecho y seleccionar descomprimir.
* @param archivo zip
* @param
* @autor gabriel
*/
@SuppressWarnings("tipos sin formato")
public static void descomprimir archivos (archivo zipFile) lanza IOException {
//Obtener el directorio donde se encuentra el archivo comprimido
Ruta de cadena=zipFile.getAbsolutePath();
ruta=ruta.substring(0,ruta.lastIndexOf("//"));
// System.out.println("ruta "+ruta);
ZipFile zip = nuevo ZipFile(zipFile);
for(Entradas de enumeración =zip.entries();
entradas.hasMoreElements();){
Entrada ZipEntry = (ZipEntry)entries.nextElement();
Cadena zipEntryName = entrada.getName();
InputStream en = zip.getInputStream(entrada);
// directorio de salida outPath
String outPath = (ruta+"//"+zipEntryName).replaceAll("//*", "/");;
//System.out.println("rutasalida "+rutasalida);
//Determina si la ruta existe, si no, crea la ruta del archivo
Archivo archivo = nuevo Archivo(outPath.substring(0, outPath.lastIndexOf('/')));
si(!archivo.existe()){
archivo.mkdirs();
}
// Determine si la ruta completa del archivo es una carpeta. Si se cargó arriba, no es necesario descomprimirlo.
if(nuevo archivo(outPath).isDirectory()){
continuar;
}
//Información de la ruta del archivo de salida
System.out.println(outPath);
OutputStream salida = nuevo FileOutputStream(outPath);
byte[] buf1 = nuevo byte[1024];
longitud interna;
mientras((len=in.read(buf1))>0){
out.write(buf1,0,len);
}
cercar();
fuera.cerrar();
}
System.out.println("******************Descompresión completada************************ *");
}
público estático vacío principal (String [] argumentos) {
intentar {
unZipFiles(new File("D://all//zip//Default.adiumemoticonset.zip"));
} captura (IOException e) {
// TODO Bloque de captura generado automáticamente
e.printStackTrace();
}
}
}