【发布时间】:2025-12-16 06:35:01
【问题描述】:
我希望我的 java 桌面应用程序知道用户是否是第一次在该电脑上运行它。由于 jar 文件可能在用户之间共享,我不想写入 jar 文件内的文件。 显然有很多方法可以做到这一点,但你会推荐什么? (它必须是跨平台的)。谢谢
【问题讨论】:
我希望我的 java 桌面应用程序知道用户是否是第一次在该电脑上运行它。由于 jar 文件可能在用户之间共享,我不想写入 jar 文件内的文件。 显然有很多方法可以做到这一点,但你会推荐什么? (它必须是跨平台的)。谢谢
【问题讨论】:
我建议使用用户主目录,您可以在其中放置用户特定的设置文件。这将允许您检测初次使用的用户并记住他们可能选择的任何偏好。
System.getProperty("user.home"); // returns the home directory cross platform
【讨论】:
尝试使用Preferences 及其systemRoot() 或userRoot() 方法来获取系统范围或用户特定的首选项。
【讨论】:
每个操作系统都有一些存储用户数据的特定目录(/home、C:\Users、C:\Documents and settings)。此值通常在 JVM 中通过“user.home”系统属性提供。
在那里存储一些文件来存储您的用户配置。当然,每个操作系统都有自己的做法(“Application Data”文件夹,名称以点开头的文件夹),您应该确保遵守它。
【讨论】: