我正在使用 DirectoryWalker,我想创建一个过滤器来列出所有包含 xml 文件的目录。我不想自己列出文件,而只想列出他们的直接父母?如果一个目录只有目录我不想列出它。你认为可行吗?
我一直在查看http://people.apache.org/~jochen/commons-io/site/apidocs/org/apache/commons/io/DirectoryWalker.html#filter上的示例,但我没有找到一个看起来做我想做的事。
public class ExtractedDirectoryWalker extends DirectoryWalker {
public ExtractedDirectoryWalker() {
super();
}
public ArrayList<File> getDirectories(File startDirectory) throws IOException {
ArrayList<File> dirs = new ArrayList<File>();
walk(startDirectory, dirs);
return dirs;
}
@Override
protected boolean handleDirectory(File directory, int depth,
Collection results) {
results.add(directory);
return true;
}
}
从另一个班级:
List<File> directories = new ExtractedDirectoryWalker()
.getDirectories(outputFolder.toFile());