我不确定我是否使用了正确的方法,所以在告诉我我做错之前我对新想法持开放态度。我有一组需要查找文件的目录路径。让我们以所有 .txt 为例。现在我Files.walkFileTree(...)
在每个目录上运行 a 并且SimpleFileVisitor
在第一次匹配时停止。但现在我想添加一个next
按钮,从我停止的点开始搜索。我怎样才能做到这一点?
我认为我可以将所有匹配项保存在一个数组中,然后从那里读取它,但它会占用空间和内存。所以一个更好的主意将不胜感激。
// example paths content: [/usr, /etc/init.d, /home]
ArrayList<String> paths;
for( String s : paths )
Files.walkFileTree(Paths.get(s), new SimpleFileVisitor<Path>() {
@Override
public FileVisitResult visitFile(Path file, BasicFileAttributes attrs) throws IOException {
if (alreadyfound >= 10) {
return FileVisitResult.TERMINATE;
}
if (file.toString().endsWith(".txt")) {
System.out.println("Found: " + file.toFile());
}
return FileVisitResult.CONTINUE;
}
});