将对象从java.nio.file.Path转换为java.io.File

Ram*_*ves 8 java

我想知道是否有可能以某种方式来转换被定义为对象java.nio.file.Path,以java.io.File

dav*_*xxx 13

两者 java.nio.file.Pathjava.io.File类都提供了从一个传递到另一个的方法.

1)调用 对象返回表示它toFile()Path对象File.

Path.toFile() javadoc:

返回File表示此路径的对象.如果这Path与默认提供者相关联,则此方法等效于返回使用此路径FileString表示构造的对象.

如果通过调用File toPath方法创建此路径,则无法保证File此方法返回的对象等于原始File.

2)相反,toPath()File对象的调用返回Path表示它的对象.

File.toPath() javadoc:

返回java.nio.file.Path从此抽象路径构造的对象.结果Path与default-filesystem相关联.

第一次调用此方法就像调用它等同于计算表达式一样:

FileSystems.getDefault().getPath(this.getPath());

此方法的后续调用返回相同的内容Path.