有一个文件夹: C:\\Users\..myfolder
它包含.pdf文件(或任何其他文件,例如 .csv)。我无法更改这些文件的名称,而且我不知道这些文件的数量。我需要一个一个地循环所有文件。我怎样才能做到这一点?
(如果我知道名字,我就知道该怎么做)
只需使用 File.listFiles
final File file = new File("whatever");
for(final File child : file.listFiles()) {
//do stuff
}
Run Code Online (Sandbox Code Playgroud)
您也可以使用FileNameExtensionFilter来过滤文件
final FileNameExtensionFilter extensionFilter = new FileNameExtensionFilter("N/A", "pdf", "csv"//, whatever other extensions you want);
final File file = new File("whatever");
for (final File child : file.listFiles()) {
if(extensionFilter.accept(child)) {
//do stuff
}
}
Run Code Online (Sandbox Code Playgroud)
烦人的FileNameExtensionFilter是来自javax.swing包所以不能直接在listFiles()api中使用,还是比自己实现文件扩展名过滤器方便多了。