IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Java Discussion :

Externalisation Java, la classe ResourceBundle et fichier .properties


Sujet :

Java

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 3
    Points : 1
    Points
    1
    Par défaut Externalisation Java, la classe ResourceBundle et fichier .properties
    Bonjour,

    Je souhaiterai externaliser tous mes messages dans un message.properties.

    Pour les chaines simple pas de pb mais j'ai aussi des chaines composés de texte et de variable.

    exemple
    j'ai les Strings suivants:
    string1 = "aucun probleme"
    string2 = "la valeur du champ "+champ1+" n'est pas valide"
    string3="le fichier "+file1+" est introuvable dans le repertoire "+repertoire1

    #Voila trois lignes de mon fichier message.properties
    cle1=aucun probleme
    cle2=(string2)
    cle3=(string3)

    je sais que mon fichier message.properties vas étre de la forme:
    cle1=aucun probleme
    cle2=lavaleur du champ {0} n'est pas valide
    cle3=le fichier {2} est introuvable dans le repertoire {3}
    et qu'il y'a une classe ResourceBundle pour gérer tout ca mais je n'en sais pas d'avantage
    je ne sais ni comment déclarer les {0}, {1}, {3} ni comment les recuperer

    Quelqu'un sait-il faire ?

    Merci d'avance

  2. #2
    Membre chevronné
    Avatar de professeur shadoko
    Homme Profil pro
    retraité nostalgique Java SE
    Inscrit en
    Juillet 2006
    Messages
    1 257
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : retraité nostalgique Java SE

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 257
    Points : 1 855
    Points
    1 855
    Par défaut
    package java.text
    classes MessageFormat (et , plus difficile, ChoiceFormat)
    lire la doc
    J'ai des principes: je peux toujours trouver une bonne raison pour les contredire .... mais j'ai des principes!
    (mon excellent bouquin sur Java : https://eska-publishing.com/fr/livre...822407076.html)

  3. #3
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    Merci pour ta réponse
    j'ai regardé, mais ca ne répond pas a ma question, y'a t'il pas un moyen de passer que par ResourceBundle et un tableau par exemple pour stoquer les variable?

  4. #4
    Membre chevronné
    Avatar de professeur shadoko
    Homme Profil pro
    retraité nostalgique Java SE
    Inscrit en
    Juillet 2006
    Messages
    1 257
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : retraité nostalgique Java SE

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 257
    Points : 1 855
    Points
    1 855
    Par défaut
    Excuses moi mais je ne comprends pas ta question....
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
     ResourceBundle bundle = ResourceBundle.getBundle("fr.maboite.utils.messages");
     
    String chaineAformatter = bundle.getString("clef1") ;
    // traiter la chaine obtenue par MessageFormat ....
    J'ai des principes: je peux toujours trouver une bonne raison pour les contredire .... mais j'ai des principes!
    (mon excellent bouquin sur Java : https://eska-publishing.com/fr/livre...822407076.html)

  5. #5
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    Bonjour
    Je me suis peut être mal exprimé
    En fait voila mon pb:

    Je veux externaliser des messages d'erreur (les exceptions)selon une langue, par defaut par exemple

    dans une classe j'ai du code de ce genre
    {
    ..................................

    ....................................
    String MaString = MonObjet1.MaMethode1();
    int MonInt = MonObjet1.MaMethode2(argument1,...., argumentn);
    Date MaDate = MonObjet2.Une Methose();
    ....................

    throw new MonException("la chaine "+MaString+" suite......");
    .........
    throw new MonException2("La valeur "+MonInt+" text..");
    .........
    throw new MonException3("....."+MaDate);

    ...........................
    }
    je voudrai metre cse messages dans un fichier .properties pour le récuperer avec SourceBundle.getString
    Mais étant donné que qu'il y a des variables, je sais pas comment y faire

    Merci

  6. #6
    Membre chevronné
    Avatar de professeur shadoko
    Homme Profil pro
    retraité nostalgique Java SE
    Inscrit en
    Juillet 2006
    Messages
    1 257
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : retraité nostalgique Java SE

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 257
    Points : 1 855
    Points
    1 855
    Par défaut
    ben, comme indiqué pour la méthode format de MessageFormat ....
    (autre remarque: dans 90% des cas une exception controlée n'est pas faite pour véhiculer un message! : c'est une confusion entre exception et rapport de log! c'est au log qu'on passe un message à internationaliser....)
    J'ai des principes: je peux toujours trouver une bonne raison pour les contredire .... mais j'ai des principes!
    (mon excellent bouquin sur Java : https://eska-publishing.com/fr/livre...822407076.html)

Discussions similaires

  1. Réponses: 0
    Dernier message: 13/03/2012, 17h26
  2. Réponses: 1
    Dernier message: 22/03/2010, 15h40
  3. Réponses: 1
    Dernier message: 04/04/2008, 16h47
  4. [ResourceBundle] accéder à un fichier properties
    Par sylsau dans le forum Collection et Stream
    Réponses: 4
    Dernier message: 04/12/2007, 22h10
  5. [JAR] pb class qui fait référence à un fichier property
    Par yanagiba dans le forum Entrée/Sortie
    Réponses: 4
    Dernier message: 11/08/2005, 11h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo