Java nio Path和普通的Java文件API有什么区别?

3

这个问题是关于java.nio包的,特别是Path类。

我一直使用标准的Java File API以及FileUtils进行基于文件的操作,比如读写、检查可用性等等......我从来没有遇到过太多问题......

......然而,最近我看到很多人在使用java.nio包中的Path类。似乎在Path API中没有明确的链接到旧的File API。

因此,我有三个问题,希望可以帮助我重新定位Path API的精神。

1)我们是否正在向java.io File类的弃用或使用更少的方向发展?

2)采用java.nio Path类进行文件操作的好处/原因是什么?

3)(不太重要,但了解这点将非常有帮助)java.nio Path与org.apache.hadoop.fs.Path类之间的关系是什么(无论是精神上还是在代码层面上)?

1个回答

1

1) 文件将保留,但在路径之前,有时URL.getStream更加灵活(file://...和http://)。现在路径可以有多个文件系统,比如在zip中;也许你遇到了旧的URL“..../xxx.jar!org/yyy/res/zzz.png”。

2) 立即:事件处理、监视目录变化等。


那么......我们会看到java.nio.Path/java.io.File的功能重叠吗? - jayunit100
URI没有替换URL。同时,对于文件和路径,存在太多的相互关联和对文件的使用。在完全弃用之前可能需要至少三年时间。 - Joop Eggen

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接