在 Java 中使用 Path 类在两个路径之间创建路径
2022-09-03 02:26:58
这个oracle java教程中的这句话到底是什么意思:
如果只有一个路径包含根元素,则无法构造相对路径。如果两条路径都包含根元素,则构造相对路径的能力取决于系统。
对于“系统依赖性”,它们是否仅意味着如果元素包含根,则它仅在已编写的特定于平台的语法中起作用?我想这是他们唯一的意思。有没有其他阅读方式?
例如:
public class AnotherOnePathTheDust {
public static void main (String []args)
{
Path p1 = Paths.get("home");
Path p3 = Paths.get("home/sally/bar"); //with "/home/sally/bar" i would get an exception.
// Result is sally/bar
Path p1_to_p3 = p1.relativize(p3);
// Result is ../..
Path p3_to_p1 = p3.relativize(p1);
System.out.println(p3_to_p1); }
}
我通过使用“/home/sally/bar”而不是“home/sally/bar”(没有root)得到的例外是这个:
java.lang.IllegalArgumentException: 'other' is different type of Path
为什么它不起作用?他们所说的与系统的冲突是什么?