Comment acceder à mon fichier properties [Résolu]

cs_byob 35 Messages postés vendredi 27 janvier 2006Date d'inscription 15 décembre 2008 Dernière intervention - 1 sept. 2008 à 11:57 - Dernière réponse : Twinuts 5261 Messages postés dimanche 4 mai 2003Date d'inscription 20 avril 2018 Dernière intervention
- 1 sept. 2008 à 14:07
Bonjour,

j'ai une petite question toute bête. J'ai mis mon fichier properties dans un package  :
com.dcl.data.config

ma classe qui doit recup les properties est dans le package : com.dcl.data.core

et quand je fais :

Properties proprietes = new Properties();
        try {
            FileInputStream path = new FileInputStream("com/dcl/data/config/MonFichier.properties");
            proprietes.load(path);
            path.close();
        } catch (IOException e) {
        }
        return proprietes;

ça ne marche pas.

Avant j'utilisais Eclipse je mettais le properties à la racine de mes packages et c'etait ok.
Là je suis dans une appli web avec netBeans.
J'ai besoin d'aide...
Merci
Afficher la suite 

4 réponses

Répondre au sujet
cs_byob 35 Messages postés vendredi 27 janvier 2006Date d'inscription 15 décembre 2008 Dernière intervention - 1 sept. 2008 à 13:32
+3
Utile
je me suis inspirée de ta reponse et d'autre truc s que j'ai trouvé et j'ai fait ça et ça marche :

public Properties getPropsFile(String propsFileName ) {
        Properties prop = new Properties();
        URL myURL = this.getClass().getClassLoader().getResource(propsFileName);
        try{
        if (myURL != null) {
            prop.load(myURL.openStream());
        }
        }catch(Exception e){
           
        }
         return prop;
    }

Appel : new fonction().getPropsFile("com/dcl/data/config/MonFichier.properties");

Merci pour tout
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de cs_byob
Twinuts 5261 Messages postés dimanche 4 mai 2003Date d'inscription 20 avril 2018 Dernière intervention - 1 sept. 2008 à 12:57
0
Utile
Salut,

si le fichier est dans le jar de ton application (ce qui semble être le cas vu le chemin) tu dois faire comme suit :

public Properties getPropsFile(final String propsFileName) throws IOException {
  final InputStream propsURL = instance.getClass().getResourceAsStream(propsFileName);
  final Properties props = new Properties();
  props.load(propsURL);
  return props;
}
...
final Properties props = getPropsFile("com/dcl/data/config/MonFichier.properties");
...

------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

OoWORAoO
Commenter la réponse de Twinuts
cs_byob 35 Messages postés vendredi 27 janvier 2006Date d'inscription 15 décembre 2008 Dernière intervention - 1 sept. 2008 à 13:08
0
Utile
Instance c'est quoi?

merci pour ta reponse
Commenter la réponse de cs_byob
Twinuts 5261 Messages postés dimanche 4 mai 2003Date d'inscription 20 avril 2018 Dernière intervention - 1 sept. 2008 à 14:07
0
Utile
Salut,

dsl j'ai zapé le getInstance .... tien la classe complète (trouvable ICI)

import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.net.URL;
import java.util.Properties;

import javax.imageio.ImageIO;

/*
* Created on Nov 17, 2006
*
*/

public class ResourceLocator {
private static ResourceLocator instance;

private ResourceLocator() {
}

public static ResourceLocator getInstance() {
if (instance == null)
instance = new ResourceLocator();
return instance;
}

public BufferedImage getImage(String imageFileName) throws IOException {
InputStream imageURL = instance.getClass().getResourceAsStream(imageFileName);
BufferedImage image = ImageIO.read(imageURL);
return image;
}

public Properties getPropsFile(String propsFileName) throws IOException {
InputStream propsURL = instance.getClass().getResourceAsStream(propsFileName);
Properties props = new Properties();
props.load(propsURL);
return props;
}

public File getFile(String fileName){
File file= null;
URL url = instance.getClass().getResource(fileName);
file = new File(url.getFile());
return file;
}

}

------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

OoWORAoO
Commenter la réponse de Twinuts

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.