Recorrer el árbol de ficheros

2101 vistas

Para obtener la lista de ficheros de un directorio:



java
  1. /** Class : java.io.File */
  2. public File [] listFiles ();



Para conocer el tipo de fichero:



java
  1. /** Class : java.io.File */
  2. public boolean isDirectory ();
  3. public boolean isFile ();



Ejemplo:
Este ejemplo realiza un recorrido recursivo de un árbol de ficheros y muestra (en la salida estándar) la lista de todos los ficheros que contiene el directorio y sus subdirectorios



java
  1. public static void listaDirectorio ( File directorio ) {
  2.         System.out.println ( directorio.getAbsolutePath());
  3.         if ( directorio.isDirectory ( ) ) {
  4.                 File[] list = directorio.listFiles();
  5.                 for ( int i = 0; i < list.length; i++) {
  6.                         // llamada recursiva sobre las subcarpetas
  7.                         listaDirectorio( list[i]);
  8.                 }
  9.         }
  10. }



Atención: este algoritmo no funciona correctamente con un árbol cÃclico bajo Unix.