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

Langage Java Discussion :

Encoder en UTF-8 (euro)


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2007
    Messages
    46
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2007
    Messages : 46
    Par défaut Encoder en UTF-8 (euro)
    Bonjour a tous.

    J'ai un petit soucis, Je poste sur un formulaire une chaine contenant le symbole €.

    Quand mon serveur reçoit la chaine je la converti comme suit
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     new String(req.getParameter(param).getBytes(),"UTF-8")
    Le problème c'est que tout se passe bien sauf pour le symbole €.

    Par exemple en entrée j'ai ceci : "€ é à"
    Mon serveur récupère ceci : â?¬ é Ã
    Et après conversion j'ai ceci : ??? é à

    Je suis perdu .

    Est ce que quelqu'un a une petite idée ?

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Première remarque : on n'utilise jamais getBytes().

    On utilise getBytes("iso-8859-1") ou getBytes("utf-8") ou autre chose, mais jamais getBytes(). Parce que cela dépend de l'encodage par défaut de la machine et que cela change d'une machine à l'autre.

    Deuxième remarque : vu tes résultats, ton serveur récupère € é à. C'est juste que tu te trompes (toi ou tes outils) de manière de l'afficher. Tu affiches du utf-8 comme si c'était du iso-8859-1.

    Réponse : la ligne que tu nous montres est inutile, dans ton cas elle ne fait rien, dans d'autres cas elle ne peut que poser problème.
    Vire-là. Utilise juste req.getParameter(param)

    Ce que tu obtiens après conversion s'affiche mal parce que la technologie qui l'affiche ne gère pas le caractère euro. Change-en.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2007
    Messages
    46
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2007
    Messages : 46
    Par défaut
    Merci de ta réponse !

    Comme un gros nul j'ai pas fait attention au paramètre de getBytes().
    J'ai mis en paramètre "iso-8859-1" et la ça marche !

    Étrange cependant , mes pages contenant mes formulaires sont en UTF-8 ...

    Le principal c'est que ça marche .


    Encore merci.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Utilisation] Can't convert string from native encoding to 'UTF-8':
    Par vdumont dans le forum Subversion
    Réponses: 3
    Dernier message: 29/12/2010, 19h07
  2. Réponses: 1
    Dernier message: 18/02/2008, 20h10
  3. Comment encoder en UTF-8 mes fichiers ?
    Par taffMan dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 29/05/2007, 16h35
  4. Réponses: 1
    Dernier message: 03/04/2007, 18h31
  5. Creation d'un fichier XML avec ASP encoder en UTF-8
    Par freeze_land dans le forum ASP
    Réponses: 6
    Dernier message: 14/02/2007, 10h59

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