【发布时间】:2014-09-07 13:54:32
【问题描述】:
我正在运行此代码来遍历目录 -
import java.io.*;
import java.nio.file.*;
import java.nio.file.attribute.*;
public class FindDirectoriesTest {
public void find()
throws IOException
{
Path dir = Paths.get("some_dir");
Files.walkFileTree(dir, new SimpleFileVisitor<Path>() {
public FileVisitResult visitFile(Path file, BasicFileAttributes attrs)
throws IOException
{
if (attrs.isDirectory()) {
//do something;
} else {
//do something else
}
return FileVisitResult.CONTINUE;
}
public FileVisitResult visitFileFailed(Path file, IOException exc) throws IOException
{
return FileVisitResult.CONTINUE;
}
});
}
}
问题是attrs.isDirectory()即使有目录也不会执行。它正确列出了所有常规文件,但没有列出目录。这里有什么遗漏吗?
【问题讨论】: