In this tutorial we will find out how to list all files and folders in the specified directory.
Java 6
Listing all the files and directories in the specified directory (flat structure):
public void listFilesForFolder(File directory) { File[] files = directory.listFiles(); for (File file : files) { System.out.println(file); } }
Listing all files and directories recursively (including subdirectories):
public void listFilesForFolderRecursively(File directory) {
for (File file : directory.listFiles()) {
if (file.isDirectory()) {
listFilesForFolderRecursively(file);
} else {
System.out.println(file);
}
}
}
Java 8
Listing all the files and directories in the specified directory (flat structure) using Files.list()
method:
public void listFilesForFolderUsingFilesList(String directory) throws IOException { Files.list(Paths.get(".")) .forEach(System.out::println); }
Listing all the files and directories in the specified directory (flat structure) using Files.newDirectoryStream()
method:
public void listFilesForFolderUsingNewDirectoryStream(String directory) throws IOException { Files.newDirectoryStream(Paths.get(".")) .forEach(System.out::println); }
Listing all files and directories recursively using Files.walk()
method .
public void listFilesForFolderJava8Recursively(String directory) throws IOException { Files.walk(Paths.get(directory)) .forEach(System.out::println); }