gabrish目录中的Java首选项文件

vbkedwbf  于 2023-02-28  发布在  Java
关注(0)|答案(2)|浏览(94)

我在一个大的java应用程序(Intellij)中将我的prefs指定为

private final Preferences root = Preferences.userRoot();
private final Preferences prefs = root.node("/org/gs_users/gs_mv");

该名称对应于java包名称。
运行应用程序并查找prefs.xml文件后,我发现:shows in ~/home/.java as:
我尝试了不同的方法来指定首选项根和节点。但是每次我运行应用程序时,都会出现一个新的乱码目录,其中包含不同的字母和符号组合,即使我没有更改任何内容。尽管应用程序在其他方面运行完美,但我不能像这样发布它。

k5hmc34c

k5hmc34c1#

由于首选项文件名的更改,应用程序不会记住每次运行的首选项

iqjalb3h

iqjalb3h2#

也许我可能是错的,但显然你是试图使用Preferences类来保存目录(例如,用户可以选择一个目录来导出/导入文件,然后所选的目录将被用作默认目录)。你是否试图只创建userRoot而不创建prefs?

private final Preferences user = Preferences.userRoot();
    
    String defaultString = "defaultString";
    String preferenceDirectory = this.user.get(defaultStr, null);
    if(preferenceDirectory != null){
        File defaultInitialDirectory = new File(preferenceDirectory);
        fileChooser.setInitialDirectory(defaultInitialDirectory);
    }

像这样,应用程序将记住目录或任何其他您需要的首选项。我也同意@MadProgrammer的观点,即prefsiderxml文件是技术性的,仅供系统使用。

相关问题