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 :

Conversion byte [] -> String


Sujet :

Langage Java

  1. #1
    Membre actif
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2003
    Messages
    422
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2003
    Messages : 422
    Points : 243
    Points
    243
    Par défaut Conversion byte [] -> String
    Hello,

    J'ai un tableau de bytes qui est en fait du texte. J'aimerais l'afficher comme tel, mais j'obtiens des ' ? ' à la place des caractères accentués qui se trouvent dans le texte, comment faire ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
        public static void byteToString(byte[] bytes, int size)
        {
            for (int i = 0; i < size; i++)
                System.out.print((char)bytes[i]) ;
        }
    Le texte "Mon caractère accentué" devient donc "Mon caract?re accentu?"

  2. #2
    Membre habitué
    Inscrit en
    Avril 2004
    Messages
    170
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 170
    Points : 174
    Points
    174
    Par défaut
    je ne suis pas sur que ca resolve ton pb mais pourquoi n'utilises-tu pas la classe Byte pour faire ta conversion ?

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    154
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2002
    Messages : 154
    Points : 143
    Points
    143
    Par défaut
    Regardes peut être du cpté du constructeur String(byte[] bystes,String charset) et de la classe Charset : http://javaalmanac.com/egs/java.lang/UnicodeToUTF8.html
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
        try {
            // Convert from Unicode to UTF-8
            String string = "abc\u5639\u563b";
            byte[] utf8 = string.getBytes("UTF-8");
     
            // Convert from UTF-8 to Unicode
            string = new String(utf8, "UTF-8");
        } catch (UnsupportedEncodingException e) {
        }
    Je ne sais pas quels charset tu dois utiliser.
    Bonne soirée

  4. #4
    Membre actif
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2003
    Messages
    422
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2003
    Messages : 422
    Points : 243
    Points
    243
    Par défaut
    En creusant d'après vos réponses j'ai vu qu'il y avait effectivement un constructeur String() qui prenait en paramètre un tableau de bytes ! merci 8)

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 15/06/2007, 14h53
  2. conversion d'un tableau de bytes en string
    Par prady92 dans le forum VB.NET
    Réponses: 3
    Dernier message: 16/03/2007, 13h47
  3. Réponses: 20
    Dernier message: 11/07/2006, 17h43
  4. [Conversion] Comment transformer un byte[] en String ?
    Par Elbarto dans le forum Langage
    Réponses: 8
    Dernier message: 02/01/2006, 01h37
  5. [C#] Conversion d'un string en byte[] et inversement
    Par david71 dans le forum Windows Forms
    Réponses: 5
    Dernier message: 21/12/2004, 15h10

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