您可以使用ClassLoader找到应用程序目录。请参阅:Java:查找应用程序目录。使用 .properties 文件而不是 .INI 文件-
您可以通过Properties类加载并保存此文件。
__
正如其他人指出的那样,您不应将用户设置写入应用程序目录。如果用户没有对应用程序目录的写访问权限怎么办?如果您的应用程序被同一系统上的多个用户同时使用,该怎么办?这两种情况都没有异常,即使在Windows上也是如此。
您可能仍想从应用程序目录中加载某些设置-也许管理员已在此处配置了默认设置。
通用约定是将用户设置保存到用户的主目录中:
/home/user/.eclipseC:documents and SettingsUser.eclipse
尽管这意味着您可能会留下杂散的文件,但是如果用户重新安装该应用程序,则可能会有所帮助。在自述文件中记录这些内容。以下是创建和获取目录引用的方法:
public static File getSettingsDirectory() { String userHome = System.getProperty("user.home"); if(userHome == null) { throw new IllegalStateException("user.home==null"); } File home = new File(userHome); File settingsDirectory = new File(home, ".myappdir"); if(!settingsDirectory.exists()) { if(!settingsDirectory.mkdir()) { throw new IllegalStateException(settingsDirectory.toString()); } } return settingsDirectory;}
在类似Unix的 *** 作系统上,以句点(“ .myappdir”)开头的目录名将使目录隐藏。在Windows上,该目录位于 我的文档
下方,因此用户只有在寻找该目录后才能看到该目录。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)