Listar Archivos y Carpetas de una Ruta/Carpeta en Java


Listar, buscar o mostrar archivos de una carpeta es una tarea que siempre nos va a ser util, en este articulo les muestro como hacer un listado de archivos o carpetas con el lenguaje Java.

En java como todos sabemos hay librerias o imports que tenemos que hacer para hacer todo un poco mas facil.

La mayoria de operaciones con archivos y carpetas son usando java.io.File aunque tambien hay otras.

Para este ejemplo vamos a usar los siguientes imports.

import java.io.File; // Librerias para manejo de archivos
import java.io.IOException; // Libreria para manejo de Exceciones de tipo IO
import java.nio.file.Files; // manejo de archivos
import java.nio.file.LinkOption; // Opciones de Links o enlaces
import java.nio.file.Path; // Manejo de Rutas
import java.nio.file.Paths; // Manejo de Rutas

Y ahora el siguiente codigo es para listar los archivos.

Puro codigo en Java

En el codigo agregue comentarios en cada linea para que se pueda entender mejor lo que estamos haciendo.

La ruta que estoy usando es una ruta en Linux, para que les funcione a ustedes deben cambiar la ruta si estan en Windows.

    public static void main(String[] args) throws IOException{
        System.out.println("Listando Archivos!");
        
        
        
        String ruta = "/home/evilnapsis/"; // Definimos la ruta
        
        Path path = Paths.get(ruta); // Creamos una Path apartir de la ruta
        
        // En el siguiente IF verificamos si existe la carpeta de la ruta y si de verdad es una carpeta
        if(Files.exists(path, LinkOption.NOFOLLOW_LINKS) && Files.isDirectory(path, LinkOption.NOFOLLOW_LINKS)){
            
            File folder = new File(ruta); // Abrimos la carpeta
            File[] files  = folder.listFiles(); // Hacemos un listado y obtenemos los archivos.
            System.out.println("Empezando ...");
            for(int i =0; i< files.length; i++){ // Hacemos un recorrido por el array que nos devuelve el metodo listFiles
                System.out.println(files[i].getName()); // Imprimimos los resultados
            }
        }
    }

El resultado de este codigo se mostrara en consola o en la salida del netbeans.

Y listo amigos.

Leave a comment