Ciao a tutti, avrei bisogno di salvare nelle preferenze dell utente il percorso dell'ultimo file aperto in modo da poter salvare senza bisogno di chiedere ogni volta all'utente dove salvare le modifiche fatte dal programma.
Ho cercato di implementare la cosa nel seguente modo:
codice:
/**
* Imposta il percorso del file aperto nel file di preferenze
*
* @param file il file di cui salvare il perorso
*/
public void setUserPreferenceFilePath(File file) {
Preferences preferences = Preferences.systemNodeForPackage(this.getClass());
if (file != null) {
preferences.put("filePath", file.getPath()); //<-- qui il problema
//aggiorno il nome dell' applicazione aggiungendo il percorso del file di preferenza
this.primaryStage.setTitle("LFT App" + file.getPath());
}
else {
//se il file e' null allora rimuovo il percorso dal file di preferenza
preferences.remove("filePath");
//ripristino il nome generico dell' app
this.primaryStage.setTitle("LFT App");
}
}
Il problema è che quando eseguo il percorso non viene salvato e ottengo questo messaggio:
codice:
mar 06, 2015 11:47:18 PM java.util.prefs.FileSystemPreferences syncWorld
AVVERTENZA: Couldn't flush system prefs: java.util.prefs.BackingStoreException: /etc/.java/.systemPrefs/sample create failed.
Sapreste dirmi cosa sbaglio o un altro modo per poter salvare il percorso dell' ultimo file aperto?
Grazie