Puede ubicar el directorio de su aplicación utilizando el ClassLoader. Ver: Java: finding the application directory. En lugar de un archivo .INI, utilice un archivo .properties - puede cargarlo y guardarlo mediante la clase Properties.
Como han notado otros, no debe escribir la configuración del usuario en el directorio de la aplicación. ¿Qué pasa si el usuario no tiene acceso de escritura al directorio de la aplicación? ¿Qué ocurre si su aplicación está siendo utilizada por múltiples usuarios en el mismo sistema al mismo tiempo? Ninguna de estas situaciones es inusual, incluso en Windows.
Es posible que desee cargar algunas configuraciones desde el directorio de la aplicación; quizás el administrador haya configurado allí las configuraciones predeterminadas.
Una convención común es guardar la configuración del usuario en el directorio de inicio del usuario:
/home/user/.eclipse
C:\Documents and Settings\User\.eclipse
Aunque esto significa que usted puede dejar archivos perdidos detrás, esto puede ser beneficioso si el usuario vuelve a instalar la aplicación. Documente tales cosas en un README. Aquí es cómo crear y obtener una referencia al directorio:
public static File getSettingsDirectory() {
String userHome = System.getProperty("user.home");
if(userHome == null) {
throw new IllegalStateException("user.home==null");
}
File home = new File(userHome);
File settingsDirectory = new File(home, ".myappdir");
if(!settingsDirectory.exists()) {
if(!settingsDirectory.mkdir()) {
throw new IllegalStateException(settingsDirectory.toString());
}
}
return settingsDirectory;
}
En los sistemas operativos tipo Unix, a partir del nombre de directorio con un punto (".myappdir") hará que el directorio oculto. En Windows, se ubicará debajo de Mis documentos, por lo que los usuarios no verán el directorio a menos que lo busquen.
y lo que sobre la ejecución de la misma aplicación en MacOS ?? Y estoy totalmente de acuerdo con este artículo ... http://www.codinghorror.com/blog/archives/000939.html Así que creo que el registro no es una buena idea :) – Lipis