欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

[NIO.2] 第三十二篇 SimpleFileVisitor 类

程序员文章站 2022-03-02 11:21:42
...
要实现 FileVisitor 接口就要实现接口上的所有方法,但是你有可能只需要实现其中的一两个方法,因此这对于你来说会显得很麻烦。在这种情况下,你可以继承 SimpleFileVisitor 类,它是 FileVisitor 接口的一个实现。这样,你就仅仅只需要覆盖你需要的方法即可。

例如,你可能需要遍历目录树并打印所有目录的名字。要实现这个目标,只需要覆盖  postVisitDirectory() 和 visitFileFailed() 方法,参考代码如下:

class ListTree extends SimpleFileVisitor<Path> { 
    @Override 
    public FileVisitResult postVisitDirectory(Path dir, IOException exc) { 
        System.out.println("Visited directory: " + dir.toString()); 
        return FileVisitResult.CONTINUE; 
    } 
    @Override 
    public FileVisitResult visitFileFailed(Path file, IOException exc) { 
        System.out.println(exc); 
 
        return FileVisitResult.CONTINUE; 
    } 
}


正如你所见,上面代码忽略了 preVisitDirectory() 和 visitFile()  两个方法。

文章来源:http://www.aptusource.org/2014/04/nio-2-simplefilevisitor/
相关标签: Java NIO.2