56 votes

Chaîne de caractères en tableau de caractères Java

J'ai besoin d'un regard neuf, je ne sais pas pourquoi ce code fait cela.

String string = new String(new char[] {(char) 0x01, (char) 0x02, ... ,(char) 0xFC});

La sortie est tout ce qu'elle devrait être jusqu'au dernier chiffre (le 0xFC) qui renvoie un -4, Je sais que c'est une valeur hexagonale, mais si je fais la même chose avec 252 la valeur décimale, cela me donne aussi un négatif. J'espère qu'il s'agit d'une solution simple, mais je ne la vois pas.

Merci à l'avance.

159voto

Kevin Points 1182

Une chaîne de caractères vers un tableau de caractères est aussi simple que

String str = "someString"; 
char[] charArray = str.toCharArray();

Pouvez-vous expliquer un peu plus ce que vous essayez de faire ?

* Mise à jour *

si je comprends bien votre nouveau commentaire, vous pouvez utiliser un tableau d'octets et un exemple est fourni.

byte[] bytes = ByteBuffer.allocate(4).putInt(1695609641).array();

for (byte b : bytes) {
   System.out.format("0x%x ", b);
}

Avec la sortie suivante

0x65 0x10 0xf3 0x29

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X