例如,我有一个带偏好按钮的窗口。 我希望这样做,以便当用户按下首选项按钮并检查他/她的相应选项并按确定时,它会保存首选项,然后当用户按下主窗口上的运行时,它会根据首选项的优先级运行窗口。
提前谢谢。
答案 0 :(得分:80)
您可以使用java.util.prefs包。一个简单的例子:
// Retrieve the user preference node for the package com.mycompany
Preferences prefs = Preferences.userNodeForPackage(com.mycompany.MyClass.class);
// Preference key name
final String PREF_NAME = "name_of_preference";
// Set the value of the preference
String newValue = "a string";
prefs.put(PREF_NAME, newValue);
// Get the value of the preference;
// default value is returned if the preference does not exist
String defaultValue = "default string";
String propertyValue = prefs.get(PREF_NAME, defaultValue); // "a string"
答案 1 :(得分:8)
有一个Java Preferences API专门用于此目的。它允许您以简单的跨平台方式存储每个用户的首选项,而API本身则负责存储数据的位置和方式。
答案 2 :(得分:2)
除了首选项之外,还有另一种可供使用Java Web Start启动的富客户端的替代方法。另一种选择是PersistenceService。这是一个小demo. of the PersistenceService。
这也是一项服务,程序员无需担心信息存储位置的细节。
答案 3 :(得分:0)
public void saveProperties() {
try {
String USER_NAME = "Some name";
String DP_ADDRESS = "Some url";
//create a properties file
Properties props = new Properties();
props.setProperty("User name", USER_NAME);
props.setProperty("Display picture address", DP_ADDRESS);
File f = new File("YOUR_TARGET_FILE_PATH");
OutputStream out = new FileOutputStream( f );
//If you wish to make some comments
props.store(out, "User properties");
}
catch (Exception e ) {
e.printStackTrace();
}
}
您可以使用java.util.Properties
保存您的偏好