programa Java para leer e imprimir todos los archivos de un archivo zip

En este programa java, vamos a aprender cómo leer un archivo zip y acceder a todos los archivos de ella ? Aquí, vamos a tener un archivo zip, leer archivos de e imprimir los nombres de archivo.

Dado un archivo zip, y tenemos que imprimir todos los nombres de los archivos de la misma mediante el programa Java.

Para implementar este programa java, vamos a utilizar las clases FileInputStream class para gestionar archivos normales mediante la creación de su objeto, y ZipInputStream para gestionar archivos zip mediante la creación de su objeto.

Hay otros dos métodos de ZipInputStream main, que son:

  1. getNextEntry () – esto va a comprobar si el archivo siguiente (mientras llamándolo en el bucle) está disponible en el archivo zip o no .
  2. getName () – para obtener el nombre de archivo del archivo zip.

programa para extraer los nombres de los archivos de archivos zip en java

import java.io.BufferedInputStream;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.zip.ZipEntry;
import java.util.zip.ZipInputStream;
public class FindFileInZipFile
{
public void printFileList(String filePath)
{
// initializing the objects.
FileInputStream fis = null;
ZipInputStream Zis = null;
ZipEntry zEntry = null;
try
{
fis = new FileInputStream(filePath);
Zis = new ZipInputStream(new BufferedInputStream(fis));
// this will search the files while end of the zip.
while((zEntry = Zis.getNextEntry()) != null)
{
System.out.println(zEntry.getName());
}
Zis.close();
}
catch (FileNotFoundException e)
{
e.printStackTrace();
}
catch (IOException e)
{
e.printStackTrace();
}
}
//main function
public static void main(String a[])
{
// creating object of the file.
FindFileInZipFile fff = new FindFileInZipFile();
System.out.println("Files in the Zip are : ");
// enter the path of the zip file with name.
fff.printFileList("D:/JAVA.zip");
}
}

salida

Files in the Zip are : 
ExOops.java


Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *