我想使用Apache Commons IO的FileUtils.listFiles
查找目录中的所有文件,但不想执行搜索递归。Java - commons-io - listFiles非递归
我可以递归列出所有文件,像这样:
FileUtils.listFiles(directory,
new RegexFileFilter(regex),
DirectoryFileFilter.DIRECTORY);
这里DirectoryFileFilter.DIRECTORY
接受所有目录,因此完全递归。看看DirectoryFileFilter
的JavaDoc我没有看到任何提供的实现,拒绝所有目录。我可以实现它自己,像这样..
public class NonRecursiveDirectoryFileFilter extends DirectoryFileFilter {
@Override
public boolean accept(File file) {
return false;
}
}
我想如果下议院IO包括方便DirectoryFileFilter.DIRECTORY
递归搜索,应该有非递归搜索同样方便的实现,不是吗? JavaDocs建议在Commons IO中没有扩展DirectoryFileFilter
。我可以忽略一些东西吗
@MrLore我其实不知道'File.listFiles'! =)我最终找到了一个'FalseFileFilter'这个技巧,但是这个更干净,干杯! –