Problème avec la classe FileOutputStream
Bonsoir,
J'essaye de sauvegarder un fichier de configuration avec la classe Properties et pour cela j'ai besoin lors de la méthode store() d'un OutputStream vers le fichier ou je veux sauvegarder ma config. Mais je n'arrive pas à trouver le lien absolu vers ce fichier qui se trouve dans un package resources du même programme. J'arrive pourtant bien à le récupérer avec un getResource() mais lorsque j'essaye d'en extraire le path pour faire la sauvegarde j'ai une erreur.
Voici mon code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
| package model;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Enumeration;
import java.util.Properties;
/**
*
* @author Phoste
*/
public class Configuration {
public static void load() {
Properties properties = new Properties();
try {
properties.load(Configuration.class.getResourceAsStream("/resources/config.cfg"));
Enumeration enuKeys = properties.keys();
while (enuKeys.hasMoreElements()) {
String key = (String) enuKeys.nextElement();
String value = properties.getProperty(key);
System.out.println(key + ": " + value);
}
} catch (IOException e) {
e.getMessage();
}
}
public static void save() {
Properties properties = new Properties();
properties.setProperty("server-ip", "192.168.1.10");
try {
FileOutputStream out = new FileOutputStream(Configuration.class.getResource("/resources/config.properties").getPath());
properties.store(out, "test");
out.close();
} catch (IOException e) {
System.out.println(e.getMessage());
}
}
public static void main(String[] args) {
Configuration.save();
}
} |
et voici l'erreur en question :
Code:
file:\D:\blablabla\dist\tagadatsointsoin.jar!\resources\config.properties (La syntaxe du nom de fichier, de répertoire ou de volume est incorrecte)