从java.io.File中获取java.nio.file.Path对象(Get java.nio.

2019-08-17 18:18发布

是否有可能获得从一个Path对象java.io.File

我知道你可以使用路径转换为文件toFile()方法,但我找不到相反的转换。 有没有办法在Java 6中或下做到这一点?

Answer 1:

是的,你可以从得到它File目的是通过使用File.toPath() 请记住,这仅仅是针对Java 7+。 版本的Java 6和下面没有它。



Answer 2:

从文档 :

与默认的关联路径provider一般都与可互操作java.io.File类。 由其他供应商创建的路径不太可能与所代表的抽象路径名可互操作java.io.FiletoPath方法可以被用于获得从通过的java.io.File对象表示的抽象路径名称的路径。 所得到的路径可以用于在相同的文件作为操作java.io.File对象。 此外, toFile方法是有用的构建FileString一个的表示Path

(重点煤矿)

因此,对于toFile

返回File表示此路径对象。

toPath

返回java.nio.file.Path从这个抽象路径构造的对象。



Answer 3:

你可能想File.toPath()



Answer 4:

正如许多建议,JRE V1.7和上述具有File.toPath();

File yourFile = ...;
Path yourPath = yourFile.toPath();

Oracle的JDK 1.7文档这也是在上述其他职位提及,下面的等效代码是在描述用于toPath()方法,其可用于JRE V1.6工作描述;

File yourFile = ...;
Path yourPath = FileSystems.getDefault().getPath(yourFile.getPath());


文章来源: Get java.nio.file.Path object from java.io.File