Motivado por las publicación Listar un directorio y Listar un directorio de forma recursiva (siempre en Java) de Linea de Codigo, volví a abrir mi IDE para escribir algo de Java y refrescar la memoria un poco.
El resultado fue una pequeña aplicación que no incorpora mucho más que las publicaciones originales, pero que me ha servido para renovar un poco el código de Java que circula perdido por mi cabeza, conocer algo más de la clase File, algo de la clase Date y el ingreso y visualización por consola.
A continuación veremos una descripción de la pequeña aplicación y el código de la misma con algún que otro comentario pertinente.
import java.io.BufferedReader;
import java.io.File;
import java.io.IOException;
import java.io.InputStreamReader;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.logging.Level;
import java.util.logging.Logger;
/**
*
* @author luciano
*/
public class Main {
/**
* List a directory
* @param f Directory path
*/
public static void lsDirectory ( File dir ) {
File[] archivos = dir.listFiles();
for ( int i=0 ; i<archivos.length ; i++ ) {
System.out.print( i +") " + archivos[i].getName() + "t" );
if ( archivos[i].isDirectory() ) {
lsDirectory( archivos[i] );
}
String date = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss").format(new Date ( archivos[i].lastModified() ));
System.out.println(date);
}
}
/**
* main method
* @param args argumentos de línea de comandos
*/
public static void main(String[] args) {
String path = null;
try {
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
System.out.print("Ingrese directorio:");
path = in.readLine();
} catch (IOException ex) {
Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex);
}
File dir = new File(path);
if (!dir.exists()) {
System.out.println("Directorio no existe");
} else {
lsDirectory(dir);
}
}
}
Una respuesta para "ls (list directory) recursivo en Java"
Muy interesante, gracias.
Comentarios: