【发布时间】:2013-04-30 15:57:05
【问题描述】:
我正在研究 Java NIO.2 及其文件操作,目前我正在使用文件树遍历函数和类。
NIO.2 FileVisitor API 很棒,可惜最近才在 Java SE 中添加这样的东西,而不是十年前。但是,有一点让我有点困扰:将FileVisitor 接口设为通用有什么意义?
网络上的每个示例都显示了如何将它与Files.walkFileTree() 一起使用,这意味着我们使用的是FileVisitor<Path> 类型。但是除了Path 之外,我看不到这个接口的任何用途。嗯,也许可以使用FileVisitor 来遍历其他类型的树(内存中的树?),但这感觉不对:这个接口和相关类具有非常具体的名称在语义上与文件相关联,FileVisitor 的方法也会抛出 IOExceptions。
那么,参数化FileVisitor 类型有什么原因吗?
【问题讨论】:
-
推测:
FileVisitor也可用于访问其他文件系统,例如HDFS.