我目前正在編寫一款遊戲,並且已經到了需要用戶能夠保存諸如JFrame大小,密鑰綁定等內容的偏好的程度。用戶將會運行遊戲通過從我的網站下載的jar。從JAR中保存偏好設置
我決定在「java.util.prefs.Preferences」下使用Preferences API。在閱讀文檔等方面,我還是很新的,並希望有人幫我解釋一下。
到目前爲止,我有這樣的事情:
Preferences prefs = Preferences.userNodeForPackage(com.custardgames.horde2d.Game.class);
prefs.put(name, value);
那麼現在,實際上,我怎麼去節約用戶計算機上的首選項文件?現在,如果我再次運行該程序,並嘗試只是:
Preferences prefs = Preferences.userNodeForPackage(com.custardgames.horde2d.Game.class);
System.out.println(prefs.get(name, null));
它只是返回null這是默認值,如果沒有什麼保存。我知道我錯過了實際保存文件的重要部分,然後以正確的方式打開它,但沒有得到太多的谷歌搜索。
非常感謝!
編輯: 僅供參考,閱讀圖片,我使用的是這樣的:
BufferedImage currentImage=ImageIO.read(this.getClass().getClassLoader().getResource("res/images/image.jpg"));
我希望能夠做的喜好類似的東西。
編輯: name
和value
都是預先聲明的字符串變量。
因此,我碰到[this](http://stackoverflow.com/questions/5354838/java-java-util-preferences-failing)問題。也許它失敗的原因是一樣的? –