操作路径
加入两条道路
可以使用 resolve()
方法连接路径。传递的路径必须是部分路径,这是不包含根元素的路径。
Path p5 = Paths.get("/home/");
Path p6 = Paths.get("arthur/files");
Path joined = p5.resolve(p6);
Path otherJoined = p5.resolve("ford/files");
joined.toString() == "/home/arthur/files"
otherJoined.toString() == "/home/ford/files"
规范化路径
路径可能包含元素 .
(指向你当前所在的目录)和 ..
(指向父目录)。
当在路径中使用时,可以随时移除 .
而不改变路径的目的地,并且可以将 ..
与前面的元素一起移除。
使用 Paths API,可以使用 .normalize()
方法完成:
Path p7 = Paths.get("/home/./arthur/../ford/files");
Path p8 = Paths.get("C:\\Users\\.\\..\\Program Files");
p7.normalize().toString() == "/home/ford/files"
p8.normalize().toString() == "C:\\Program Files"