Bonjour,
Après maintes bidouilles et recherches sur l'encodage pour ton cas
j'ai peut être trouvé une solution :
String maChaine = new String(new byte[] {0x15, (byte)(0xC0)}, "UTF-16");
char [] tabChaine = maChaine.toCharArray();
System.out.println("Valeur hexa : " + Integer.toHexString((int)(tabChaine[0])));
il retourne 15c0.
Avant ca ne pouvait pas fonctionner puisque lorsque tu cast 0xC0 en byte
tu perds en précision puisque 0xC0 vaut 192 et un byte est compris entre
-127 et 128 : grosso modo ton 192 il te le transformait en valeur négative.
Dans le cas de figure ou ca fonctionne, je t'avoue que je ne saurais trop
t'expliquer ce qui s'est passé j'ai surtout procédé par tatonnements.
J'espère que ca pourra t'aider tt de même.
Bonne chance
Bonjour,
Après maintes bidouilles et recherches sur l'encodage pour ton cas
j'ai peut être trouvé une solution :
il retourne 15c0.
Avant ca ne pouvait pas fonctionner puisque lorsque tu cast 0xC0 en byte
tu perds en précision puisque 0xC0 vaut 192 et un byte est compris entre
-127 et 128 : grosso modo ton 192 il te le transformait en valeur négative.
Dans le cas de figure ou ca fonctionne, je t'avoue que je ne saurais trop
t'expliquer ce qui s'est passé j'ai surtout procédé par tatonnements.
J'espère que ca pourra t'aider tt de même.
Bonne chance