我正在处理需要保存项目设置的项目,当程序启动时,它应该从设置中读取文件。在 Windows 中,我无权在任何我想要的地方制作文件。我不想在临时文件夹中制作,因为它可以在一段时间后被删除。知道我应该把文件放在哪里吗?
问问题
98 次
3 回答
1
您可以查看以下内容:
http://www.mindspring.com/~mgrand/java-system-properties.htm
其中,我看到使用以下内容:
user.home
user.dir
java.io.tmpdir
用于临时文件。但是,我认为user.dir使用起来最安全,而user.home是最常见的。
编辑:似乎常见的做法是将 user.home 用于在启动和重新启动时将由您的应用程序重用的文件,而 user.dir 更常用于临时文件。
所以,我建议使用:
System.getProperty("user.home");
由于您的 java 将具有在那里读写的权限,因此您永远不会出错。
于 2012-02-07T13:14:22.640 回答
0
如果这是某种用户偏好,请使用 System.getEnv("APP_DATA") 如果它也与本地系统(即运行它的计算机)有关,请使用 System.getEnv("LOCA_APP_DATA")。请记住,这不适用于 Windows 以外的其他平台。要拥有真正跨平台的东西,您可以使用指向用户主目录的 System.getProperty("user.home")。
于 2012-02-07T13:14:06.953 回答
0
如果您只需要存储首选项,则根本不需要文件,应该使用Preferences API。无需担心权限、交叉兼容性等问题。
于 2012-02-07T13:42:23.447 回答