4

我看到问题“user.dir 是什么意思?” 它是如何识别的,为什么它不能正常工作如何改变它。但我没有看到基本问题:为什么我们首先需要“user.dir”,毕竟操作系统都支持“。” 对于当前目录

我看到user.dir= 当前目录 whareas 的绝对路径.是相对的。它只是 的简写File(".").getAbsoluteFile().getParentFile().getName()吗?

4

2 回答 2

2

因为当前目录可以根据在文件系统中导航的程序进行更改。程序启动的目录不能改变。

于 2013-10-16T13:52:58.577 回答
1

我认为"user.dir"属性的用途与Linux中的pwd 命令或 Windows 中的GetCurrentDirectory相同。我认为这种方式更清楚,因为我们清楚地使用pwd了当我们想要获取当前目录的(绝对)路径时。相反,.当您不想知道它时,它是当前目录的简写,而是告诉系统我们要使用当前路径。在这种情况下使用速记是合理的。第一个意思current path relative to the root,第二个—— current path relative to the current path

当您在进程之间进行通信时,差异可能很重要。如果您将路径传递给系统中的另一个进程,它可能具有不同的当前目录,因此,您最好更喜欢绝对路径。另一方面,如果您将路径传递给另一个系统,则可能首选相对路径。

于 2013-10-16T16:38:00.863 回答