[JVM] Problème d'encodage Java
[JVM] Problème d'encodage Java
Bonsoir,
J'ai un petit soucis lorsque je programme en Java et que je compile, le code ne passe pas si il y a un caractère du type "é" ou "è".
Je pensais que c'étais une généralités liés a java mais sur une autre machine je n'ai pas eu de soucis.
Je me suis donc dis qu'il manquais certainement un petit "plus" a installer.
Auriez-vous une idée ?
Cordialement.
J'ai un petit soucis lorsque je programme en Java et que je compile, le code ne passe pas si il y a un caractère du type "é" ou "è".
Je pensais que c'étais une généralités liés a java mais sur une autre machine je n'ai pas eu de soucis.
Je me suis donc dis qu'il manquais certainement un petit "plus" a installer.
Auriez-vous une idée ?
Cordialement.
- jaco
- Chu Ko Nu
- Messages : 344
- Inscription : ven. 18 mars 2011, 23:42
- Localisation : Toulouse, France
Re: [JVM] Problème d'encodage Java
Quel encodage utilises-tu pour ton fichier source ?
Re: [JVM] Problème d'encodage Java
Comment puis-je le voir ?
- jaco
- Chu Ko Nu
- Messages : 344
- Inscription : ven. 18 mars 2011, 23:42
- Localisation : Toulouse, France
Re: [JVM] Problème d'encodage Java
Normalement, ça doit être dans le menu fichier... Enfin, ça dépend de ton éditeur de texte, évidemment, mais en faisant "sauver sous", généralement, tu vois l'encodage utilisé.
- FoolEcho
- Maître du Kyudo
- Messages : 10707
- Inscription : dim. 15 août 2010, 11:48
- Localisation : Basse-Normandie
Re: [JVM] Problème d'encodage Java
Pour le savoir, tu peux aussi lancer
Après c'est à toi de voir... changer l'encodage des sources (si c'est un truc perso) ou compiler avec l'encodage adéquat (dépend de comment tu compiles: préférences sur le projet dans eclipse/netbeans ou javac -encoding <encodage utilisé par les sources>).
file
sur l'un des fichiers qui contient du code non ascii.Après c'est à toi de voir... changer l'encodage des sources (si c'est un truc perso) ou compiler avec l'encodage adéquat (dépend de comment tu compiles: préférences sur le projet dans eclipse/netbeans ou javac -encoding <encodage utilisé par les sources>).
«The following statement is not true. The previous statement is true.»
Re: [JVM] Problème d'encodage Java
Le problème vient du fait que dans mon Emacs il utilise un encodage ASCII et que moi je voudrais un encodage ISO-8859 (si je ne me trompe pas).
Est-ce bien cela ?
Si oui comment le changé ? merci d'avance
Est-ce bien cela ?
Si oui comment le changé ? merci d'avance
- jaco
- Chu Ko Nu
- Messages : 344
- Inscription : ven. 18 mars 2011, 23:42
- Localisation : Toulouse, France
Re: [JVM] Problème d'encodage Java
Je pense que tu aurais plutôt intérêt à utiliser l'encodage UTF-8... Pour Emacs, ça fait trop longtemps que je ne l'utilise plus donc je ne me souviens plus de la manip, désolé
- FoolEcho
- Maître du Kyudo
- Messages : 10707
- Inscription : dim. 15 août 2010, 11:48
- Localisation : Basse-Normandie
Re: [JVM] Problème d'encodage Java
Pareil, je te conseille utf-8.
Et pour Emacs, tu vas dans Options > Mule (Multilingual Environment) > Set coding systems > for saving this buffer et là tu choisis ton encodage (tu as le complétement avec TAB ).
Mais si tu as beaucoup de fichiers, ça peut être rébarbatif, tu peux utiliser
Et pour Emacs, tu vas dans Options > Mule (Multilingual Environment) > Set coding systems > for saving this buffer et là tu choisis ton encodage (tu as le complétement avec TAB ).
Mais si tu as beaucoup de fichiers, ça peut être rébarbatif, tu peux utiliser
iconv
pour réencoder tes fichiers. (voir par exemple, la doc Gentoo (exemple n°3): http://www.gentoo.org/doc/fr/utf-8.xml#doc_chap3 )«The following statement is not true. The previous statement is true.»
Re: [JVM] Problème d'encodage Java
Je suis quelque peut égaré car cela à semblé marcher mais ne marche plus.
Je m'explique j'ai réussi a passer 3 fichier(s) .c en utf-8, je n'ai pas réussi a passer mes fichier java en utf-8 et puis maintenant tout les nouveaux fichier sont enregistrés en ASCII...
Pas moyen de les passé en utf-8 que ce soit avec emacs ou avec l'exemple sur le site de gentoo...
Comment faire pour que emacs me mette par défaut en utf-8 ?
Et surtout comment faire pour que tout mes autre fichier sois en utf-8 ?
Merci d'avance
edit : même avec bluefish ou autre mes fichier sont de base en ASCII
Je m'explique j'ai réussi a passer 3 fichier(s) .c en utf-8, je n'ai pas réussi a passer mes fichier java en utf-8 et puis maintenant tout les nouveaux fichier sont enregistrés en ASCII...
Pas moyen de les passé en utf-8 que ce soit avec emacs ou avec l'exemple sur le site de gentoo...
Comment faire pour que emacs me mette par défaut en utf-8 ?
Et surtout comment faire pour que tout mes autre fichier sois en utf-8 ?
Merci d'avance
edit : même avec bluefish ou autre mes fichier sont de base en ASCII
- jaco
- Chu Ko Nu
- Messages : 344
- Inscription : ven. 18 mars 2011, 23:42
- Localisation : Toulouse, France
Re: [JVM] Problème d'encodage Java
De mémoire, doit falloir mettre la règle qui va bien dans ton fichier .emacs (ou .emacs.el)...
Tu utilises quoi, comme locale ?
Je ne sais pas si ça influe sur le comportement de tes éditeurs mais, chez moi :
Tu utilises quoi, comme locale ?
Je ne sais pas si ça influe sur le comportement de tes éditeurs mais, chez moi :
Code : Tout sélectionner
[Iggy ~]% locale
LANG=fr_FR.utf8
LC_CTYPE="fr_FR.utf8"
LC_NUMERIC="fr_FR.utf8"
LC_TIME="fr_FR.utf8"
LC_COLLATE="fr_FR.utf8"
LC_MONETARY="fr_FR.utf8"
LC_MESSAGES="fr_FR.utf8"
LC_PAPER="fr_FR.utf8"
LC_NAME="fr_FR.utf8"
LC_ADDRESS="fr_FR.utf8"
LC_TELEPHONE="fr_FR.utf8"
LC_MEASUREMENT="fr_FR.utf8"
LC_IDENTIFICATION="fr_FR.utf8"
LC_ALL=
- FoolEcho
- Maître du Kyudo
- Messages : 10707
- Inscription : dim. 15 août 2010, 11:48
- Localisation : Basse-Normandie
Re: [JVM] Problème d'encodage Java
Si l'encodage de ton système/utilisateur est en utf-8, emacs devrait suivre... Sinon tu modifies "set language environment" (toujours dans Mule).arch.mick a écrit :Comment faire pour que emacs me mette par défaut en utf-8 ?
Quand tu écris dans le scratch ou que tu ouvres un nouveau fichier, tu es en quoi par rapport à ton système (l'encodage est spécifié dans le coin en bas à gauche, par exemple "U" pour unicode) ?
S'ils sont en ascii, c'est qu'ils ont été enregistré ainsi (ils ont pu l'être car il n'y avait pas d'accents ou autre). iconv peut te les convertir quand même (il faut changer le -f bien sûr).
«The following statement is not true. The previous statement is true.»
Re: [JVM] Problème d'encodage Java
jaco a écrit :De mémoire, doit falloir mettre la règle qui va bien dans ton fichier .emacs (ou .emacs.el)...
Tu utilises quoi, comme locale ?
Je ne sais pas si ça influe sur le comportement de tes éditeurs mais, chez moi :
Code : Tout sélectionner
[Iggy ~]% locale LANG=fr_FR.utf8 LC_CTYPE="fr_FR.utf8" LC_NUMERIC="fr_FR.utf8" LC_TIME="fr_FR.utf8" LC_COLLATE="fr_FR.utf8" LC_MONETARY="fr_FR.utf8" LC_MESSAGES="fr_FR.utf8" LC_PAPER="fr_FR.utf8" LC_NAME="fr_FR.utf8" LC_ADDRESS="fr_FR.utf8" LC_TELEPHONE="fr_FR.utf8" LC_MEASUREMENT="fr_FR.utf8" LC_IDENTIFICATION="fr_FR.utf8" LC_ALL=
Code : Tout sélectionner
[mick@dell-studio ~]$ locale
LANG=fr_FR.UTF-8
LC_CTYPE="fr_FR.UTF-8"
LC_NUMERIC="fr_FR.UTF-8"
LC_TIME="fr_FR.UTF-8"
LC_COLLATE="fr_FR.UTF-8"
LC_MONETARY="fr_FR.UTF-8"
LC_MESSAGES="fr_FR.UTF-8"
LC_PAPER="fr_FR.UTF-8"
LC_NAME="fr_FR.UTF-8"
LC_ADDRESS="fr_FR.UTF-8"
LC_TELEPHONE="fr_FR.UTF-8"
LC_MEASUREMENT="fr_FR.UTF-8"
LC_IDENTIFICATION="fr_FR.UTF-8"
LC_ALL=
Je n'arive pas à utiliser iconv avec ascii sa ne passe pas en utf-8FoolEcho a écrit :Si l'encodage de ton système/utilisateur est en utf-8, emacs devrait suivre... Sinon tu modifies "set language environment" (toujours dans Mule).arch.mick a écrit :Comment faire pour que emacs me mette par défaut en utf-8 ?
Quand tu écris dans le scratch ou que tu ouvres un nouveau fichier, tu es en quoi par rapport à ton système (l'encodage est spécifié dans le coin en bas à gauche, par exemple "U" pour unicode) ?
S'ils sont en ascii, c'est qu'ils ont été enregistré ainsi (ils ont pu l'être car il n'y avait pas d'accents ou autre). iconv peut te les convertir quand même (il faut changer le -f bien sûr).
Et j'ai bien un U en bas à gauche
- FoolEcho
- Maître du Kyudo
- Messages : 10707
- Inscription : dim. 15 août 2010, 11:48
- Localisation : Basse-Normandie
Re: [JVM] Problème d'encodage Java
S'il y a des caractères non-ascii dans ton source, ben... ça ne peut pas être de l'ascii et enregistré comme tel (sinon la conversion doit fonctionner). Que renvoie
Quand tu ouvres le source que tu veux convertir, il t'affiche quoi ? (si "--" alors pur ascii ; si "1" alors latin1/iso8859-1)
file tonfichier
et quelle commande iconv tu lui appliques ?Donc tu es bien en unicode, suivant logiquement ta locale.FoolEcho a écrit :Et j'ai bien un U en bas à gauche
Quand tu ouvres le source que tu veux convertir, il t'affiche quoi ? (si "--" alors pur ascii ; si "1" alors latin1/iso8859-1)
«The following statement is not true. The previous statement is true.»
- jaco
- Chu Ko Nu
- Messages : 344
- Inscription : ven. 18 mars 2011, 23:42
- Localisation : Toulouse, France
Re: [JVM] Problème d'encodage Java
Quand tu dis que "ton code ne passe pas quand il y a un é", ça veut dire quoi exactement ?
Re: [JVM] Problème d'encodage Java
Quand j'ouvre mon code source j'ai "--"FoolEcho a écrit :S'il y a des caractères non-ascii dans ton source, ben... ça ne peut pas être de l'ascii et enregistré comme tel (sinon la conversion doit fonctionner). Que renvoiefile tonfichier
et quelle commande iconv tu lui appliques ?
Donc tu es bien en unicode, suivant logiquement ta locale.FoolEcho a écrit :Et j'ai bien un U en bas à gauche
Quand tu ouvres le source que tu veux convertir, il t'affiche quoi ? (si "--" alors pur ascii ; si "1" alors latin1/iso8859-1)
file mon fichier me retourne ASCII text (ou parfois ASCII C++ pour du java )
j'utilise iconv -f ascii -t utf-8 fichier_base > fichier_transformé
Cela veut dire que je n'aurais pas les caractère accentués mais quelque chose d'autre a la place et qui est incompréhensible...jaco a écrit :Quand tu dis que "ton code ne passe pas quand il y a un é", ça veut dire quoi exactement ?
- FoolEcho
- Maître du Kyudo
- Messages : 10707
- Inscription : dim. 15 août 2010, 11:48
- Localisation : Basse-Normandie
Re: [JVM] Problème d'encodage Java
Et ? Tu as un message d'erreur ? Quand tu ouvres ton fichier transformé avec emacs, il t'indique quoi ?arch.mick a écrit :Quand j'ouvre mon code source j'ai "--"
file mon fichier me retourne ASCII text (ou parfois ASCII C++ pour du java )
j'utilise iconv -f ascii -t utf-8 fichier_base > fichier_transformé
Quand tu ouvres un fichier avec des accents (non transformé donc), emacs ne reconnaît pas l'encodage ?arch.mick a écrit :Cela veut dire que je n'aurais pas les caractère accentués mais quelque chose d'autre a la place et qui est incompréhensible...
«The following statement is not true. The previous statement is true.»
Re: [JVM] Problème d'encodage Java
Je n'ai aucun message d'erreur mais la sorti de file monfichier ne change pas malheureusement...
Et lorsque j'ouvre le fichier emacs le détecte correctement car quand j'ai des fichiers (anciens) encodé en utf-8 il reconnait que c'est de l'utf-8 et affiche les accents et pour les autres il détecte que c'est du ASCII et donc pas d'accent.
Et lorsque j'ouvre le fichier emacs le détecte correctement car quand j'ai des fichiers (anciens) encodé en utf-8 il reconnait que c'est de l'utf-8 et affiche les accents et pour les autres il détecte que c'est du ASCII et donc pas d'accent.