小编典典

在 Java 中查找用户主目录的最佳方法是什么?

all

在 Java 中查找用户主目录的最佳方法是什么?

难点在于解决方案应该是跨平台的;它应该适用于 Windows 2000、XP、Vista、OS X、Linux 和其他 Unix
变体。我正在寻找可以在所有平台上完成此操作的代码片段,以及一种检测平台的方法。

根据 Java
错误4787931,系统属性user.home
Windows XP 上无法正常工作,因此使用此系统属性不是可接受的解决方案,因为它不是跨平台的。


阅读 97

收藏
2022-04-06

共1个答案

小编典典

您引用的错误(错误 4787391)已在 Java 8 中修复。即使您使用的是较旧版本的
Java,该System.getProperty("user.home")方法可能仍然是最好的。这种user.home方法似乎在很多情况下都有效。Windows
上的 100% 防弹解决方案很难,因为 Windows 对主目录的含义有一个不断变化的概念。

如果user.home对你来说还不够好,我建议选择home directoryfor windows
的定义并使用它,使用System.getenv(String).

2022-04-06