[NIO.2] 第三十二篇 SimpleFileVisitor 类
程序员文章站
2022-03-02 11:21:42
...
要实现 FileVisitor 接口就要实现接口上的所有方法,但是你有可能只需要实现其中的一两个方法,因此这对于你来说会显得很麻烦。在这种情况下,你可以继承 SimpleFileVisitor 类,它是 FileVisitor 接口的一个实现。这样,你就仅仅只需要覆盖你需要的方法即可。
例如,你可能需要遍历目录树并打印所有目录的名字。要实现这个目标,只需要覆盖 postVisitDirectory() 和 visitFileFailed() 方法,参考代码如下:
正如你所见,上面代码忽略了 preVisitDirectory() 和 visitFile() 两个方法。
文章来源:http://www.aptusource.org/2014/04/nio-2-simplefilevisitor/
例如,你可能需要遍历目录树并打印所有目录的名字。要实现这个目标,只需要覆盖 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/
推荐阅读
-
PHP 进阶篇:面向对象的设计原则,自动加载类,类型提示,traits,命名空间,spl的使用,反射的使用,php常用设计模式 (麦子学员 第三阶段)
-
[NIO.2] 第十二篇 NIO.2 属性视图之 Basic View
-
[NIO.2] 第三篇 定义 Path 类
-
[NIO.2] 第二篇 NIO.2 和 Path 类简介
-
[NIO.2] 第二十二篇 创建硬链接
-
[NIO.2] 第三十二篇 SimpleFileVisitor 类
-
[NIO.2] 第三十篇 递归操作简述
-
[NIO.2] 第三十八篇 监控服务 API
-
[NIO.2] 第三十九篇 实现文件监控服务
-
[NIO.2] 第三十五篇 编写一个文件删除应用