Bonjour,
a peine prétentieux, je me dit que mon programme pourrait intéresser aussi bien des anglais, des français, des danois et j'en passe, je me suis donc un peu penché sur l'internationalisation et l'utilisation de ResourceBundle.
Vous vous en doutez ça marche pas comme je voudrais (voir pas du tout en fait).
Je souhaite faire un MakeReseau (ça c'est ma classe) et j'ai donc fait un fichier MakeReseauRessourcesBundle_fr_FR.properties qui se présente comme ceci :
Il est enregistré dans le même répertoire que le fichier MakeReseau.class
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 echelle = échelle unite = unité precision = précision dimension = dimension largeur = largeur profondeur = profondeur defaut = réseau par défaut ?
Le code du MakeReseau (enfin la partie qui pose probleme):
et voici ce que je recupere dans mon fichier erreur1.txt :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 public class MakeReseau { private ResourceBundle ressources; public MakeReseau(Locale malocale){ try{ ressources=ResourceBundle.getBundle("MakeReseauRessourcesBundle",malocale);} catch (Exception e){ //juste pour obtenir le stackTrace dans un fichier car des fois c'est trop long pour le lire en entier sur la console ;) System.out.println("exception 1"); String cheminEntre="erreur1.txt"; cheminEntre=cheminEntre.replace('/', File.separatorChar); File entre = new File(cheminEntre); try{ PrintStream fileout = new PrintStream(entre); e.printStackTrace(fileout); fileout.flush(); fileout.close(); } catch (Exception ex3){System.out.println("exception fichier");}} } }
Le Desktop est un bout de code qui me permet de tester mes composants au fur et a mesure il est dans le package par defaut de l'application.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 java.util.MissingResourceException: Can't find bundle for base name MakeReseauRessourcesBundle, locale fr_FR at java.util.ResourceBundle.throwMissingResourceException(ResourceBundle.java:1508) at java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1262) at java.util.ResourceBundle.getBundle(ResourceBundle.java:789) at rails.graphique.MakeReseau.<init>(MakeReseau.java:18) at Desktop.<init>(Desktop.java:70) at Desktop.main(Desktop.java:20)
dedans je fais juste
la ligne 70 correspond a cet appel et la ligne 18 de MakeReseau correspond a la ligne try.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Locale maLocale = new Locale("fr","FR"); MakeReseau mk = new MakeReseau(maLocale); //etc
J'ai essayé en baladant mon fichier MakeReseauRessourcesBundle_fr_FR.properties un peu partout mais ça ne change rien...
D'où vient le problème : les _ qui ne devrait pas être là, le fichier qui n'est pas au bon endroit ?
merci d'avance pour vos lumières,
Bon code,
kerinel
Partager