gpt4 book ai didi

java - 如何使用 Java 7 的新文件 API 检查路径是否指向现有文件?

转载 作者:IT老高 更新时间:2023-10-28 21:00:02 26 4
gpt4 key购买 nike

旧的,或多或少不推荐使用的 java.io.File API 有一个方法 exists 如果 File 指向一个文件系统中存在一个,但我找不到 java.nio.file.Path 的任何可比方法:

scala> import java.nio.file._
import java.nio.file._

scala> val path = Paths.get("/foo")
path: java.nio.file.Path = /foo

scala> path.
asInstanceOf compareTo endsWith getFileName getFileSystem getName getNameCount
getParent getRoot isAbsolute isInstanceOf iterator normalize register
relativize resolve resolveSibling startsWith subpath toAbsolutePath toFile
toRealPath toString toUri

当然我可以将 path 转换回 File 但我想有更好的方法来做到这一点。

编辑:好的,感谢大家指出Files.exists。有人知道为什么它变得更复杂(比在 Path 上有一个简单的 exists 方法)吗?

最佳答案

使用 Files 类:

Files.exists(path);

编辑:为了回答您随后的问题,我认为该方法在另一个类中的原因是 Path 是一个接口(interface),他们想提供一个实现(类似于将排序方法放入Collections 类而不是 List 接口(interface))。

与问题没有直接关系,但根据棘轮怪胎,该方法还有一个可选的 varags 参数,它决定了如何处理符号链接(symbolic link)

Read the Javadocs from Oracle here .

关于java - 如何使用 Java 7 的新文件 API 检查路径是否指向现有文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6084475/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com