Java 文件树.pdf

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Java 文件树

Java ⽂件树 Java IO教程 - Java⽂件树 FileVisitor API可以递归地处理⽂件树中的所有⽂件和⽬录。 当我们要对⽂件树中的所有或某些⽂件或⽬录执⾏某些操作时 FileVisitor API⾮常有 ⽤。 SimpleFileVisitor类是FileVisitor接⼜的基本实现。 当访问⽂件/ ⽬录时 SimpleFileVisitor类不执⾏任何操作。我们可以从 SimpleFileVisitor类继承我们的⽂件访问类 并且只覆盖适合我们需要的⽅法。 FileVisitor接⼜的⽅法: ID 含义 1 FileVisitResult preVisitDirectory (T dir BasicFileAttributes attrs ) 在访问⽬录中的 条⽬之前调⽤⼀次。 FileVisitResult postVisitDirectory (T dir IOE ception e c ) 已访问⽬录中的后调 2 ⽤项。如果在⽬录的迭代期间抛出了任何异常 则将异常对象作为第⼆个参数传 递给此⽅法。如果此⽅法的第⼆个参数为null 则在⽬录迭代期间没有异常。 3 FileVisitResult visitFile (T⽂件 BasicFileAttributes attrs ) 当访问⽬录中的⽂件时 调⽤。 4 FileVisitResult visitFileFailed (T⽂件 IOE ception e c ) 当由于任何原因⽽⽆法 访问⽂件或⽬录时调⽤。 下表列出了FileVisitResult的枚举常量及其说明 枚举常量 描述 CONTINUE 继续处理 SKIP_SIBLINGS 继续处理⽽不访问⽂件或⽬录的兄弟节点。 SKIP_SUBTREE 继续处理 ⽽不访问⽬录中的条⽬。 TERMINATE 终⽌⽂件访问过程。 我们不需要在我们的⽂件访问类的所有四个⽅法中编写逻辑。要复制⽬录 请使⽤ preVisitDirectory()⽅法来创建⼀个新⽬录和visitFile()⽅法来复制⽂件。 以下代码显⽰如何打印⽬录的⼦⽬录和⽂件的名称。 import static java.nio.file.FileVisitResult.CONTINUE; import java.io.IOException; import java.nio.file.FileVisitResult; import java.nio.file.FileVisitor; import java.nio.file.Files; import java.nio.file.Pat ; import java.nio.file.Pat s; import java.nio.file.SimpleFileVisitor; import java.nio.file.attribute.BasicFileAttributes; public class Main { public static void main(String[] args) { Pat startDir = Pat s.get(); FileVisitorPat visitor = getFileVisitor(); try { Files.walkFileTree(startDir, visitor); } catc (IOException e) { e.printStackTrace(); } } public static FileVisitorPat getFileVisitor() { class DirVisitorPat extends SimpleFileVisitorPat { @Override public FileVisitResult preVisitDirectory(Pat dir, BasicFileAttributes attrs) { System.out.format(%s [Directory]%n, dir); return CONTIN

文档评论(0)

hhuiws1482 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:5024214302000003

1亿VIP精品文档

相关文档