fichier properties - Java - Programmation
Marsh Posté le 30-03-2005 à 00:41:18
le message d'erreur est clair : java.util.Properties n'a pas de method getString(String)
regarde la javadoc
Marsh Posté le 30-03-2005 à 00:46:12
c'est d'abbord ce que j'ai pensé, mais alors d'ou viens cette méthode getString ???
Marsh Posté le 30-03-2005 à 01:22:20
le_bob75 a écrit : c'est d'abbord ce que j'ai pensé, mais alors d'ou viens cette méthode getString ??? |
c'est ton code, pas le mien, comment tu veux que je le sache
Marsh Posté le 30-03-2005 à 01:24:55
après réflexion, ca vient surement d'une confusion entre Properties et PropertyResourceBundle
Marsh Posté le 30-03-2005 à 11:49:17
effectivement, il n'y a pas de méthode getString dans java.util.properties. c'est donc pour cela qu'il y avait 1 erreur. j'ai essayer avec un RessourceBundle et ca marche. cependant, j'aimerai toujours savoir comment récuperer une chaine de caractère d'un fichier .properties avec dans mon code un properties, et non un RessourceBundle. merci pour les infos. bye
Marsh Posté le 30-03-2005 à 12:15:30
merci pour le conseil, mais maintenant, j'ai un autre problème : le compilateur m'indique une erreur de type FileNotFoundException, donc je pense qu'il ne trouve pas mon fichier appli.properties. je ne comprend pas pourquoi, pourtant il est dans le meme répertoire que mes sources.
Marsh Posté le 30-03-2005 à 12:24:41
Et tes fichires .class sont eux aussi aux même endroit que tes sources ? Je dis ça mais je suis même pas sûr que ce soit là qu'il pointe par défaut.
Sinon tu peux toujours essayer de lui indiquer le chemin complet, mais c'est pas top comme solution.
Marsh Posté le 30-03-2005 à 12:34:51
j'ai déja essayer, mais j'ai toujours la même erreur. je ne comprend pas. et Oui, mes fichiers .class sont dans le même répertoire que mes sources. d'ailleur, je voudrais les mettre dans un fichier spécifique,pour faire un truc propre, mais je suppose qu'il faut que je modifie la var classpath (ou bien path), et comme j'ai déja eu beaucoups de mal à me constituer un environnement de travail qui marche, je n'ai plus trop envie d'y toucher (à ces 2 variable d'environnement). bref, si t'a une idée, je suis preneur. ciao
Marsh Posté le 30-03-2005 à 12:47:49
essayes peut etre avec ca :
Code :
|
Marsh Posté le 30-03-2005 à 13:01:33
ok, donc j'ai compiler ce que tu m'a envoyé, mais apparement il y a une erreur : il dit trouver un fileInputStream ("appli.properties" ) alors qu'il attent un String.
Marsh Posté le 30-03-2005 à 13:34:22
ouais j'ai ecrit un peu n'importe nawak (la fatigue),
essayes ca plutot
Code :
|
Marsh Posté le 30-03-2005 à 13:48:15
merci beaucoups, j'ai retster avec ton code ca, marche !
je ne sais pas pourquoi ca ne marhcait pas ??? c'est un des mystère du java. en tout cas merci (à tous) pour votre aide.
salut
Marsh Posté le 30-03-2005 à 13:49:35
oh merde je viens d'editer mon code avec une deuxieme version
pendant que tu repondais, tant mieux si ca marche mais le code d'en haut marche aussi normallement
Marsh Posté le 30-03-2005 à 16:51:36
le_bob75 a écrit : c'est un des mystère du java. |
non. C'est juste que tu essayes d'utiliser des choses sans te documenter dessus . C'est un peu préseomptueux de ta part de penser que c'est java qui est mystérieux.
cf la doc pour utiliser les RessourceBundle, nottament la partie sur la nomenclature des fichiers à respecter : http://java.sun.com/j2se/1.4.2/doc [...] undle.html
pour ton problème de FileNotFound, c'est surement que le fichier n'est pas dans le répertoire depuis lequel tu lances alors que tu utilises un chemin relatif => soit tu utilises un chemin absolu, soit tu te débrouilles pour que le répertore de travail de ton appli java soit le bon.
Dernière solution (celle proposée par sebi2706) : utiliser les getRessource ... mais là il faut que ton fichier de properties soit dans le classpath
Marsh Posté le 31-03-2005 à 00:01:29
Ce n'est pas la peine, maintenant ca marche. Pourtant, je me suis renseigné avant d'utiliser les properties. le problème, c'est qu'un de mes collègues informaticien (et spécilialiste du java en plus...) m'a dit d'utiliser la méthode getString pour un properties. Or cette méthode s'applique aux ResourcesBundle. pour les properties on utilise getProperty(java.lang.String). Voila, cependant je te remercie de tes conseils. bonne soirée.
ps : tu saurais comment faire pour que mes fichiers .class se mettent dans un fichier que j'appelerai class, afin qu'il ne soit pas mélangés avec mes .java ??? Merci @ bientot
Marsh Posté le 31-03-2005 à 00:17:56
option de compile -d
tu pourrais quand même essayer de chercher un minimum avant de poser la question, mmmm ?
Marsh Posté le 30-03-2005 à 00:39:38
salut, j'ai un petit soucis avec les fichiers properties
voici mon code :
import javax.swing.*;
import java.awt.*;
import java.util.*;
import java.io.*;
public class Essai extends JFrame {
public static void main(String argv[]) {
JFrame f = new JFrame("Vos Comptes" );
f.setSize(400,200);
JPanel pannel = new JPanel();
Properties p = new Properties();
FileInputStream in = new FileInputStream ("appli.properties" );
p.load(in);
JButton bouton = new JButton(p.getString("oklabel" ));
pannel.add(bouton);
f.getContentPane().add(pannel);
f.setVisible(true);
}
}
le compilateur m'affiche l'erreur suivante : cannot resolve symbol / symbol : method getString (java.lang.String) /
location : class java.util.Properties
dans mon fichier appli.properties j'ai : Oklabel=valider. tout mes fichiers se trouvent dans le meme répertoire, et je compile tout sur une invite de commande windows. J'éspère que quelq'un pourra m'expliquer ces histoires de properties. merci (ou bien si vous connaissez des liens en français...)
MERCI