web-dev-qa-db-fra.com

Conversion d'un tableau d'octets contenant ASCII caractères en chaîne

J'ai un tableau d'octets composé de ASCII que je souhaite convertir en chaîne. Par exemple:

byte[] myByteArray = new byte[8];
for (int i=0; i<8; i++) {
    byte[i] = (byte) ('0' + i);
}

myByteArray doit contenir une chaîne "12345678" après la boucle. Comment obtenir cette chaîne dans une variable de chaîne?

Merci!

17
user1118764

Utilisation

new String(myByteArray, "UTF-8");

La classe de chaîne fournit un constructeur pour cela.

Note latérale: Le deuxième argument ici est le CharSet (codage d'octets) qui doit être manipulé avec soin. Plus ici.

37
rocketboy
String aString = new String(yourByteArray);

ou

String aString = new String(yourByteArray, "aCharSet"); 
//Replacing "aCharSet" with the appropriate chararacter set

Facile Voir les documents

3
Java Devil