Estoy tratando de obtener una lista de todos los archivos en un directorio y sus subdirectorios. Mi enfoque recursivo actual es la siguiente:Forma no recursiva de obtener todos los archivos en un directorio y sus subdirectorios en Java
private void printFiles(File dir) {
for (File child : dir.listFiles()) {
if (child.isDirectory()) {
printFiles(child);
} else if (child.isFile()) {
System.out.println(child.getPath());
}
}
}
printFiles(new File("somedir/somedir2"));
Sin embargo, esperaba que hubiera una manera no recursiva (una llamada API existente, tal vez) de hacer esto. Si no, ¿es esta la manera más limpia de hacer esto?
posible duplicado de [enumerar de forma recursiva archivos en Java] (http://stackoverflow.com/questions/2056221/recursively-list-files-in-java). El título dice recursivamente, pero la primera respuesta es una llamada a la biblioteca. – Jacob
@cularis No es un duplicado, ya que estoy tratando de hacerlo de forma no recursiva, mientras que la otra pregunta SO está pidiendo que se haga de forma recursiva. –
¿Qué pasa con la recursión? No hay API para esto, sin embargo, todavía puedes hacerlo con un ciclo 'while' y algún otro negocio divertido, pero será complicado. –