Convertion d'une string en byte[] au format UTF-8 [Résolu]

Signaler
Messages postés
6
Date d'inscription
lundi 29 novembre 2004
Statut
Membre
Dernière intervention
16 novembre 2005
-
sheorogath
Messages postés
2465
Date d'inscription
samedi 21 février 2004
Statut
Modérateur
Dernière intervention
29 janvier 2010
-
Bonjour,



je cherche à convertir une chaine de caractère (ex : "toto")

en un tableau de byte la représentant au format UTF-8

(ex pour "toto"=04116111116111)



sans passer par un fichier (creer avec DataOutputStream avec l'instruction writeUTF)

ce que je fais pour avoir les valeur de l'exemple.



Merci par avance pour vos suggestions

3 réponses

Messages postés
2465
Date d'inscription
samedi 21 février 2004
Statut
Modérateur
Dernière intervention
29 janvier 2010
11
public static String convertUTF(byte[] bytes) throws IOException
{
byte[] utf = new byte[ bytes.length+2 ];
utf[0] = (byte)((bytes.length & 0xFF00) >> 8);
utf[1] = (byte)(bytes.length & 0x00FF);
System.out.println(utf[0]+"\n"+utf[1]);
System.arraycopy(bytes, 0, utf, 2, bytes.length);
DataInputStream in =
new DataInputStream( new ByteArrayInputStream(utf) );
StringBuilder build = new StringBuilder();
int c = in.read();
while(c !=-1){

build.append(c);
c = in.read();
}
return build.toString();
}


}

c'est un code que j'ai trouver et modifier pour qu'il fasse ce que tu veut !
voici l'original :
public static java.lang.String convertUTF(byte[] bytes) throws IOException
{
byte[] utf = new byte[ bytes.length+2 ];
utf[0] = (byte)((bytes.length & 0xFF00) >> 8);
utf[1] = (byte)(bytes.length & 0x00FF);
System.arraycopy(bytes, 0, utf, 2, bytes.length);
DataInputStream in =
new DataInputStream( new ByteArrayInputStream(utf) );
return in.readUTF();
}

"n'est pas mort ce qui semble a jamais dormir et en d'etrange temps meme la mort peut mourrir"
Messages postés
6
Date d'inscription
lundi 29 novembre 2004
Statut
Membre
Dernière intervention
16 novembre 2005

Merci, mais je cherchais à ne pas utiliser java.io car mon execution ce fait dans une applet.

Mais, ton code me permet de partir sur cette piste, je vais modifier InputStream et voir ce que ça donne.



Merci
Messages postés
2465
Date d'inscription
samedi 21 février 2004
Statut
Modérateur
Dernière intervention
29 janvier 2010
11
je pense que tu peut utiliser java.io => ya aucun de fichier de cree !!
fait des test avant !!!
"n'est pas mort ce qui semble a jamais dormir et en d'etrange temps meme la mort peut mourrir"