想要改进这篇文章? 提供这个问题的详细答案,包括引文和解释为什么你的答案是正确的。没有足够细节的答案可能会被编辑或删除。
如何通过Java读取文件夹中的所有文件?哪个 API 无关紧要。
public void listFilesForFolder(final File folder) { for (final File fileEntry : folder.listFiles()) { if (fileEntry.isDirectory()) { listFilesForFolder(fileEntry); } else { System.out.println(fileEntry.getName()); } } } final File folder = new File("/home/you/Desktop"); listFilesForFolder(folder);
Files.walk API 可从 Java 8 获得。
try (Stream<Path> paths = Files.walk(Paths.get("/home/you/Desktop"))) { paths .filter(Files::isRegularFile) .forEach(System.out::println); }
该示例使用API 指南中推荐的try-with- resources模式。它确保无论在什么情况下,流都将被关闭。