[laj] classe properties

Voir le sujet précédent Voir le sujet suivant Aller en bas

[laj] classe properties

Message  Florent le Mer 06 Avr 2011, 23:01

Bonsoir,

j'ai un soucy avec la classe Properties lorsque j'éxécute ces lignes:
Code:

FileInputStream file = Config.class.getResourceAsStream("config.properties");
        Properties prop = new Properties();
        prop.load(file);

j'ai une erreur:

Code:

Config.java:15: <identifier> expected
   prop.load(file);
           ^
Config.java:15: <identifier> expected
   prop.load(file);
                 ^
2 errors

j'ai tout vérifier le nom du fichier, l'import de Properties, et je vois pas d'où ca peut venir

Merci de votre aide Wink

Florent

Nombre de messages : 93
Prénom : Florent
Date d'inscription : 02/02/2010

Revenir en haut Aller en bas

Re: [laj] classe properties

Message  mcd le Jeu 07 Avr 2011, 11:35

Alors déjà c'est une erreur à la compilation visiblement et pas à l'exécution.

Le message n'est pas très clair, je vais le traduire de façon plus appropriée :
"je ne comprends pas pourquoi je tombe sur une instruction à cet endroit du programme"
En soi, la ligne n'est pas mauvaise mais elle n'est pas placée au bon endroit Wink

mcd

Nombre de messages : 1548
Prénom : Marco
Statut : prof
Localisation : Molenbeek
Date d'inscription : 29/09/2006

http://mcd.namok.be

Revenir en haut Aller en bas

Re: [laj] classe properties

Message  pbt le Jeu 07 Avr 2011, 15:31

Ahma tu dois avoir placé ces instructions hors de ton bloc static.

Pour rappel, dans le bloc d'une classe, on peut trouver;
- une déclaration d'attribut,
- une déclaration de méthode,
- un bloc static

.... pas un appel de méthode.

_________________
smartq.namok.be · faq ·  · IRC / irc.freenode.net #esi · blog.namok.be
style #pbt {heigth:189cm; weight:79kg; eye-color:#524000; hair:very short; dead pixels: some; }

pbt
Admin

Nombre de messages : 4862
Age : 45
Prénom : Pierre
Statut : prof
Localisation : La cité des géants
Date d'inscription : 24/11/2005

http://esi.namok.be

Revenir en haut Aller en bas

Re: [laj] classe properties

Message  Florent le Jeu 07 Avr 2011, 19:18

Ah oui en effet je dois être fatigué, mes lignes de commandes fonctionnent à présent

Mais j'ai un autre problème lorsque je les éxécute j'ai l'impression qui ne trouve pas les fichiers et me lance une erreur

g33742.mastermind.business.Config commande introuvable

j'ai pourtant utilisé toutes les recommandations du pdf ?

Florent

Nombre de messages : 93
Prénom : Florent
Date d'inscription : 02/02/2010

Revenir en haut Aller en bas

Re: [laj] classe properties

Message  mcd le Jeu 07 Avr 2011, 20:10

Si tu veux qu'on t'aide, il faut être plus précis.
Quelle exception ? Quelle elle la trace de l'exception ? La ligne (et les qq lignes autour) qui pose problème ?
Parce que "g33742.mastermind.business.Config commande introuvable" ça ne ressemble pas à un message de la JVM.

mcd

Nombre de messages : 1548
Prénom : Marco
Statut : prof
Localisation : Molenbeek
Date d'inscription : 29/09/2006

http://mcd.namok.be

Revenir en haut Aller en bas

Re: [laj] classe properties

Message  Florent le Jeu 07 Avr 2011, 21:18

Ah oui en effet je me suis trompé dans l'execution de ma classe, je dois être fatigué désolé du dérangement

Surprised

Florent

Nombre de messages : 93
Prénom : Florent
Date d'inscription : 02/02/2010

Revenir en haut Aller en bas

Re: [laj] classe properties

Message  pbt le Ven 08 Avr 2011, 10:19

Une petite remarque au sujet de ces fichiers properties ... car ils seront deux !

Une première fonctionnalité consiste à lire un fichier properties (nom: config.properties) afin de créer un objet Properties. Cet objet permettra de positionner les diverses constantes. Pour ce faire nous vous proposons d'écrire le code (voir p16)
Code:
InputStream file =
    Config.class.getResourceAsStream("config.properties");
properties.load(file);

Ce code permet de dire à Java que le fichier "config.properties" est une resource nécessaire au projet. Ce fichier doit donc faire partie du projet. Pratiquement, si vous déposez ce fichier avec vos .class il sera correctement chargé et il sera inclu dans votre archive jar.

Vous êtes alors content, votre application fonctionne bien.

Plus loin dans l'énoncé (genre à la page 18), on vous demande de coder une deuxième fonctionnalité; la possibilité de sauver/lire une configuration dans un fichier. On vous propose d'écrire ça là;
Code:
~/.mastermind.properties
où ~ représente le répertoire home de l'utilisateur dont la valeur est donnée par System.getenv("HOME"). Dans ce cas, l'InputStream utile à la méthode load de la classe Properties n'est plus une "ressource de la classe" mais un "bon viel" input stream construit par le biais de la classe FileInputStream.

Ceci méritait peut-être (sans doute) d'être souligné ...

Bon travail / bonnes vacances

_________________
smartq.namok.be · faq ·  · IRC / irc.freenode.net #esi · blog.namok.be
style #pbt {heigth:189cm; weight:79kg; eye-color:#524000; hair:very short; dead pixels: some; }

pbt
Admin

Nombre de messages : 4862
Age : 45
Prénom : Pierre
Statut : prof
Localisation : La cité des géants
Date d'inscription : 24/11/2005

http://esi.namok.be

Revenir en haut Aller en bas

Re: [laj] classe properties

Message  the mad06 le Lun 02 Mai 2011, 21:29

Dans ce cas, l'InputStream utile à la méthode load de la classe Properties n'est plus une "ressource de la classe" mais un "bon viel" input stream construit par le biais de la classe FileInputStream.

J'ai un peu de mal à comprendre ce que vous voulez dire par la scratch
un InputStream peut être construit via un FileInputStream ? J'ai beau lire la doc je ne vois pas quelle méthode peut recevoir un FileInputStream en paramètre

the mad06

Nombre de messages : 2
Age : 26
Prénom : Nicolas
Localisation : Laneffe
Date d'inscription : 06/04/2011

Revenir en haut Aller en bas

Re: [laj] classe properties

Message  pbt le Lun 02 Mai 2011, 21:34

the mad06 a écrit:
Dans ce cas, l'InputStream utile à la méthode load de la classe Properties n'est plus une "ressource de la classe" mais un "bon viel" input stream construit par le biais de la classe FileInputStream.

J'ai un peu de mal à comprendre ce que vous voulez dire par la scratch
un InputStream peut être construit via un FileInputStream ? J'ai beau lire la doc je ne vois pas quelle méthode peut recevoir un FileInputStream en paramètre
Allez, je donne la solution
Code:
InputStream monBelInputStream = new FileInputStream("unfichier");

_________________
smartq.namok.be · faq ·  · IRC / irc.freenode.net #esi · blog.namok.be
style #pbt {heigth:189cm; weight:79kg; eye-color:#524000; hair:very short; dead pixels: some; }

pbt
Admin

Nombre de messages : 4862
Age : 45
Prénom : Pierre
Statut : prof
Localisation : La cité des géants
Date d'inscription : 24/11/2005

http://esi.namok.be

Revenir en haut Aller en bas

Re: [laj] classe properties

Message  Invité le Lun 02 Mai 2011, 21:53

the mad06 a écrit:
J'ai un peu de mal à comprendre ce que vous voulez dire par la scratch
un InputStream peut être construit via un FileInputStream ? J'ai beau lire la doc je ne vois pas quelle méthode peut recevoir un FileInputStream en paramètre

là où on s'attend à une classe x, on peut donner une classe y, fille de la classe x


Dernière édition par Hayk le Mar 03 Mai 2011, 22:36, édité 1 fois

Invité
Invité


Revenir en haut Aller en bas

Re: [laj] classe properties

Message  the mad06 le Lun 02 Mai 2011, 22:11

là où on s'attent à une classe x, on peut donner une classe y, fille de la classe x
J'avais effectivement mal lu la doc ...

Merci pour les réponses...
bonne soirée Smile

the mad06

Nombre de messages : 2
Age : 26
Prénom : Nicolas
Localisation : Laneffe
Date d'inscription : 06/04/2011

Revenir en haut Aller en bas

Re: [laj] classe properties

Message  Contenu sponsorisé Aujourd'hui à 10:52


Contenu sponsorisé


Revenir en haut Aller en bas

Voir le sujet précédent Voir le sujet suivant Revenir en haut


 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum