solito memorizzano nella directory dei dati utente, con sotto le directory di nome dell'applicazione seguito da versione dell'applicazione.
public static String getUserDataDirectory() {
return System.getProperty("user.home") + File.separator + ".jstock" + File.separator + getApplicationVersionString() + File.separator;
}
avevo usato il seguente codice per 3 anni. Questo metodo funziona abbastanza bene in Windows, Linux o Mac.
Si prega di notare che, in Windows, non memorizzarlo mai in Program Files
, in quanto UAC in Windows Vista o più recente potrebbe darvi un sacco di problemi.
Ricordare di inserire un punto davanti al nome dell'applicazione, in modo che diventi una cartella nascosta in Linux.
La cosa buona utilizzando questa metologia è che non si è limitati a memorizzare solo il valore primitivo. Invece, è possibile salvare l'intero stato oggetto al disco utilizzando xstream
Ad esempio:
public static boolean toXML(Object object, File file) {
XStream xStream = new XStream();
OutputStream outputStream = null;
Writer writer = null;
try {
outputStream = new FileOutputStream(file);
writer = new OutputStreamWriter(outputStream, Charset.forName("UTF-8"));
xStream.toXML(object, writer);
}
catch (Exception exp) {
log.error(null, exp);
return false;
}
finally {
close(writer);
close(outputStream);
}
return true;
}
fonte
2010-09-24 06:25:17
Dove dobbiamo conservare la chiave richiesta? –
Nice tutorial introduttivo qui: http://www.mkyong.com/java/java-properties-file-examples/ –
Voglio sottolineare che su Windows potresti dover cambiare registro se usi Preferenze. Per un normale utente dell'applicazione, questo potrebbe essere un blocco (no-go!). –