-
chemin relatif ?
Bonjour pour charger un fichier properties dans mon application j'utilise :
Code:
myProperties.load(Thread.currentThread().getContextClassLoader().getResourceAsStream(FILENAME));
ceci fonctionne tres bien, par contre quand je souhaite enregistrer des valeurs dans ce même properties,
j'utilise :
Code:
OutputStream out = new FileOutputStream([String Parameter]);
[String Parameter], correspond au nom du fichier, mais je ne souhaite pas ecrire un "C://chemin/myfiles.properties" ... je ne sais pas comment donner un chemin relatif de la même manière que mon load....
merci.
-
Salut,
L'accès aux ressources n'est possible qu'en lecture seule : tu ne peux donc pas faire l'inverse.
Sinon tu peux te passer de Thread.currentThread().getContextClassLoader() qui peut être assez couteux (il utilise le stacktrace pour récupérer les infos), et utiliser directement la classe courante :
Code:
myProperties.load(NomDeLaClasse.class.getResourceAsStream(FILENAME));
a++
-
Il faut que tu utilises getResource au lieu de getResourceAsStream. Ca te renvoie une URL dont tu peux tirer le fichier :
Code:
String cheminFichier = getClass().getResource( FILENAME ).getFile();
Attention, contrairement à getResourceAsStream, ça ne marche pas si ton fichier est dans un jar. Il faut que ce soit un fichier standard.