Problème d'encodage de String. [Résolu] - Java - Programmation
Marsh Posté le 13-05-2006 à 13:15:06
Je ne suis pas un expert dans ce domaine mais je vais quand même essayer de répondre.
Ton problème se situe bien lors de l'execution du programme ?
Normalement, java représente en interne ses caractères en UTF-8 (donc sur 1 ou deux octets)
Pour l'affichage dans la console, je crois qu'il y a une convertion vers un autre format mais je ne sais pas si ou comment on peut modifier celà.
Quand tu dis que la machine utilise une sortie UTF-8 c'est bien de l'affichage des caractères dans la console ?
Marsh Posté le 13-05-2006 à 13:18:23
The Mauler a écrit : Normalement, java représente en interne ses caractères en UTF-8 (donc sur 1 ou deux octets) |
Non. (et quand bien même, ça n'aurait aucun impact sur le problème)
Marsh Posté le 13-05-2006 à 13:44:59
J'ai résolu mon problème. Le programme Java fonctionne bien. Voici la raison :
J'avais ma machine (Linux) en ISO-8859-15, j'ai changé une variable d'environnement pour passer en UTF-8, mais le terminal dans lequel s'exécutait le programme est resté en ISO.
Par contre en rédémarrant mon système en UTF-8 complet ça marche, comme en ISO.
Donc c'est tout bon.
Marsh Posté le 13-05-2006 à 13:54:21
Donc il suffisais juste de régler le terminal
Sinon pour Masklinn, ce n'est pas de l'UTF-8 que java utilise en interne ?
Marsh Posté le 13-05-2006 à 15:02:45
The Mauler a écrit : Sinon pour Masklinn, ce n'est pas de l'UTF-8 que java utilise en interne ? |
Non, UTF-16
Marsh Posté le 26-12-2006 à 10:39:35
Bonjour,
j'ai un prblème similaire...mais sous windows...
est-ce qu'il y a un moyen de le régler de la même façon ?
Merci !
Marsh Posté le 15-01-2007 à 15:09:47
si tu veux lire et afficher un fichier UTF-8 sous windows en JAVA
il encode les chaines par defaut dans l'encoding de l'OS (CP-1252 windows) donc à la lecture il faut forcer la convertion de tes bytes lus en UTF-8
cf
http://java.sun.com/j2se/1.4.2/doc [...] tring(byte[],%20int,%20int,%20java.lang.String)
Marsh Posté le 13-05-2006 à 12:36:50
Bonjour,
J'ai quelques problèmes d'encodage de chaînes de caractères.
J'ai par exemple quelque chose comme çà :
System.out.println("Création ..." );
Le fichier est encodé en ISO-8859-15. Si la machine sur lequel le programme est utilisé, utilise uen sortie format ISO, c'est bon, par contre s'il utilise une sortie UTF-8, le "é" ne passe pas.
J'ai donc essayé d'externalizer les chaînes de caractères (outils d'éclipse), il me met un fichier : messenger.properties qui contient en autres :
XMLParser.1=Cr\u00E9ation du parser XML :
Mais ça ne change rien.
Je vois plus trop ce que je peux faire.
Merci.
Message édité par mr simon le 13-05-2006 à 13:45:39