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

What is the best way to find the user#39;s home directory in Java?(在Java中查找用户主目录的最佳方式是什么?)

本文介绍了在Java中查找用户主目录的最佳方式是什么?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

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

困难在于解决方案应该是跨平台的;它应该在Windows2000、XP、Vista、OSX、Linux和其他Unix变体上工作。我正在寻找一段可以为所有平台实现这一点的代码,以及一种检测平台的方法。

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

推荐答案

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

如果user.home对您来说不够好,我建议您为Windows选择home directory的定义并使用它,使用System.getenv(String)获取适当的环境变量。

这篇关于在Java中查找用户主目录的最佳方式是什么?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本文标题为:在Java中查找用户主目录的最佳方式是什么?