使用文件系统检索信息

要与文件系统交互,请使用 Files 类的方法。

检查存在

要检查路径指向的文件或目录是否存在,请使用以下方法:

Files.exists(Path path)

Files.notExists(Path path)

!Files.exists(path) 不一定必须等于 Files.notExists(path),因为有三种可能的情况:

  • 验证文件或目录的存在(在这种情况下 exists 返回 truenotExists 返回 false
  • 验证文件或目录的不存在(exists 返回 falsenotExists 返回 true
  • 无法验证文件或目录的存在与否(例如,由于访问限制):existsnonExists 都返回 false。

检查路径是指向文件还是目录

这是使用 Files.isDirectory(Path path)Files.isRegularFile(Path path) 完成的

Path p1 = Paths.get("/var/www");
Path p2 = Paths.get("/home/testuser/File.txt");
Files.isDirectory(p1) == true
Files.isRegularFile(p1) == false

Files.isDirectory(p2) == false
Files.isRegularFile(p2) == true

获得属性

这可以使用以下方法完成:

Files.isReadable(Path path)
Files.isWritable(Path path)
Files.isExecutable(Path path)

Files.isHidden(Path path)
Files.isSymbolicLink(Path path)

获取 MIME 类型

Files.probeContentType(Path path)

这会尝试获取文件的 MIME 类型。它返回 MIME 类型 String,如下所示:

  • text/plain 用于文本文件
  • text/html 用于 HTML 页面
  • application/pdf 用于 PDF 文件
  • image/png 的 PNG 文件