web-dev-qa-db-ja.com

Javaで設定ユーザー設定を保存するにはどうすればよいですか?

たとえば、設定ボタンのあるウィンドウがあります。ユーザーが設定ボタンを押して適切なオプションを確認し、[OK]を押すと設定が保存され、ユーザーがメインウィンドウで実行を押すと、ユーザーが設定で変更した設定に従って実行されるようにしたい窓。

前もって感謝します。

30
js0823

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"

さらに多くの Java2s.comの例 があります。

82
Peter Knego

この目的専用の Java Preferences API があります。 API自体がデータの保存場所と保存方法を処理する一方で、ユーザーごとの設定を簡単なクロスプラットフォームの方法で保存できます。

8
casablanca

環境設定に加えて、 Java Web Start を使用して起動されたリッチクライアントで使用できる別の代替手段があります。この代替はPersistenceServiceです。これは小さな PersistenceServiceのデモ です。

また、プログラマーが情報の保存場所の詳細について心配する必要がないサービスです。

2
Andrew Thompson
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を使用して設定を保存できます

0
Rahul