如何在程序中保存变量的值,然后在下一个程序运行时重复使用?我不想用文件写/读来做。
答案 0 :(得分:5)
import java.util.prefs.*;
public class Example {
// Preference key
private static final String FRUIT = "fruit";
public void savePreference(String favoriteFruit) {
Preferences prefs = Preferences.userNodeForPackage(Example.class);
prefs.put(FRUIT, favoriteFruit);
}
public String readPreference() {
Preferences prefs = Preferences.userNodeForPackage(Example.class);
return prefs.get(FRUIT, "default");
}
}
数据是根据类的完全限定名称存储的,因此您的包名称和类名称是相关的。来自documentation for the Preferences class:
此类允许应用程序存储和检索用户和系统首选项和配置数据。此数据持久存储在依赖于实现的后备存储中。典型的实现包括平面文件,特定于操作系统的注册表,目录服务器和SQL数据库。此类的用户无需关心后备存储的详细信息。
答案 1 :(得分:1)
可以使用java.util.prefs.Preferences存储设置。对于两个目标组:通常是用户设置,而不是应用程序/系统设置。他们可以使用平台设置,例如在Windows下。
然而,还存在将设置存储为XML的可能性,这是一种更简洁的方式,因为它不会触及可能受到保护的Windows注册表。然后,习惯位置将位于目录System.getProperty("user.home")
下的“.myapp”目录中。
答案 2 :(得分:0)