关于Java中的Path normalize()

时间:2014-08-18 16:14:29

标签: java

对于以下代码,aPath结果是 D:\ OCPJP7 \ NIO2 \ src \ SubPath.java。为什么程序元素消失了?

Path aPath = Paths.get(" D:\\ OCPJP7\\ programs\\..\\ NIO2\\ src\\.\\ SubPath.java"); 
aPath = aPath.normalize();

2 个答案:

答案 0 :(得分:1)

因为程序元素后跟\\..\\,这意味着“上升到一个目录级别”。此序列将从您的路径中删除\\programs\\部分。

答案 1 :(得分:1)

由于规范化取代了.. programs'目录。

所以你有NIO2作为OCPJP7的子文件夹。

同样地,.消失,因为它是冗余的(表示上下文中的当前目录)。