ranouf
Messages postés237Date d'inscriptionmercredi 18 décembre 2002StatutMembreDernière intervention31 août 2009
-
12 févr. 2006 à 03:13
ranouf
Messages postés237Date d'inscriptionmercredi 18 décembre 2002StatutMembreDernière intervention31 août 2009
-
12 févr. 2006 à 21:43
Bonjour,
J'ai une collection de parametres (Parameters.list), je voudrai pouvoir
l'enregistrer dans un fichier properties, voila ce que j'ai fait pour
l'instant :
public static void save(String file){
//On fait pointer notre Properties sur le fichier
Properties properties = new Properties() ;
// On ajoute true pour dire d'utilieré la methode append
FileOutputStream fos = new FileOutputStream(file,true);
// On enregistre notre collection de parametres
for(Object object : Parameters.list){
properties.setProperty(object,object.toString());
}
}
message d'erreur sur 'setProperty'
The method setProperty(String, String) in the type Properties is not applicable for the
arguments (Object, String)
J'ai compris d'ou viens le problème object doit etre converti en
string, ce que je voudrai c pouvoir avoir le nom de cette variable
(object.name serait logique mais ça n'existe pas)
bernie666
Messages postés427Date d'inscriptionmercredi 1 octobre 2003StatutMembreDernière intervention29 janvier 20081 12 févr. 2006 à 12:58
salut
comme solution à ton probleme tu peut utiliser la serialisation
/*Si tu utilise une arrayList par exemple, cette classe est directement serialisable sinon si c'est une classe à toi il faut l'implementé serialisable : ex : Public maClasse implements Serializable*/
try
{
ObjectOutputStream sortie = new ObjectOutputStream(new FileOutputStream(System.getProperty("user.dir") + "monFichier"));
//on enregistre l'objet dans le fichier => dans ce cas ta collection
sortie.writeObject(monObjCollection);
}
catch(Exception e){
System.out.println(e.getMessage()+" probleme sur le fichier :(");
}
Pour relire dans l'autre sens
try { //on ouvre le fichier
ObjectInputStream entree = new ObjectInputStream(new FileInputStream(System.getProperty("user.dir") + "monFichier"));
Collection maCollection = (Collection)entree.readObject();
}
ranouf
Messages postés237Date d'inscriptionmercredi 18 décembre 2002StatutMembreDernière intervention31 août 2009 12 févr. 2006 à 03:54
ce qui serait encore mieux c'est de lui faire passer carrément la
collection et qu'il l'enregistre tout seul comme un grand, je crois que
ça existe il faut juste trouver ou .... ou sinon obtenir la réponse ici
:)
cs_neodante
Messages postés2835Date d'inscriptionlundi 11 août 2003StatutModérateurDernière intervention16 décembre 200611 12 févr. 2006 à 13:33
Arf une dernière chose, sérialise juste ta List pour enregistrer tous tes objets, juste au cas où tu n'aurais pas deviner qu'il fallait faire comme ça ;-)
++
Vous n’avez pas trouvé la réponse que vous recherchez ?
ranouf
Messages postés237Date d'inscriptionmercredi 18 décembre 2002StatutMembreDernière intervention31 août 2009 12 févr. 2006 à 15:06
[auteurdetail.aspx?ID= 173141 bernie666]> c tout à fait ce que je cherchais ! merci
[auteurdetail.aspx?ID=148258 neodante]> merci pour ton aide ,
pour t'expliquer un peu mieu mon probleme, j'ai un série de paramètre
(de type Int, bool, User (classe que j'ai crée), ...) tout ces valeurs
par défaut sont écris dans ma classe, parameters, cependant, ces valeur
peuvent être changer et dans ce cas là, j'ai besoin d'enregistrer ces
changements dans un fichier properties, la solution de bernie666
correspond tout à fait à ma demande, je passe ma collection, la
fonction l'enregistre puis est capable de la récupérer parfait !