java 如何浏览文件
使用 Java 浏览文件的方法
使用 java.io.File 类
java.io.File 类是 Java 中最基本的文件操作类,可以用于浏览文件和目录。
File file = new File("path/to/directory");
String[] fileList = file.list();
for (String fileName : fileList) {
System.out.println(fileName);
}
使用 Files.list()(Java 8+)
Java 8 引入了 java.nio.file.Files 类,提供了更现代的文件操作方式。
Path dir = Paths.get("path/to/directory");
try (Stream<Path> stream = Files.list(dir)) {
stream.filter(Files::isRegularFile)
.forEach(System.out::println);
} catch (IOException e) {
e.printStackTrace();
}
递归浏览目录
如果需要递归浏览子目录,可以使用 Files.walk()。
Path start = Paths.get("path/to/directory");
try (Stream<Path> stream = Files.walk(start)) {
stream.filter(Files::isRegularFile)
.forEach(System.out::println);
} catch (IOException e) {
e.printStackTrace();
}
使用文件过滤器
可以通过过滤器筛选特定类型的文件。
File dir = new File("path/to/directory");
File[] files = dir.listFiles((d, name) -> name.endsWith(".txt"));
for (File file : files) {
System.out.println(file.getName());
}
使用 DirectoryStream(NIO)
DirectoryStream 提供了一种高效的文件浏览方式。
Path dir = Paths.get("path/to/directory");
try (DirectoryStream<Path> stream = Files.newDirectoryStream(dir)) {
for (Path entry : stream) {
System.out.println(entry.getFileName());
}
} catch (IOException e) {
e.printStackTrace();
}
使用 Apache Commons IO
Apache Commons IO 库提供了更简洁的文件操作工具。

File dir = new File("path/to/directory");
Collection<File> files = FileUtils.listFiles(dir, new String[]{"txt"}, true);
for (File file : files) {
System.out.println(file.getName());
}
注意事项
- 路径可以是相对路径或绝对路径。
- 处理文件时需注意异常处理,如
IOException。 - 使用 NIO 类(如
Files和Path)通常比传统的File类更高效。






