Voila tout est dans le titre,
je souhaiterais transformer une chaine de caractères ex:"01101110" afin de pouvoir la mettre dans mon tableau de byte[].
Version imprimable
Voila tout est dans le titre,
je souhaiterais transformer une chaine de caractères ex:"01101110" afin de pouvoir la mettre dans mon tableau de byte[].
Comme ceci peut etre :
Code:
1
2
3 byte b = Byte.parseByte("01001010", 2); int c = Integer.parseInt("10101111100111",2); ....
J'ai déjà essayer, mais j'ai une erreur de ce type :
Code:Exception in thread "AWT-EventQueue-0" java.lang.NumberFormatException: Value out of range. Value:"11111111" Radix:2
Ouaip, c'est à cause du fait que les bytes sont signés, en Java, c'est chiant.
Méthode simple :
Attention, cela présuppose que la String à transformer est correcte. Notamment, ça ne lèvera pas d'exception et rendra un résultat arbitraire :Code:
1
2 int i = Integer.parseInt("11111111", 2); byte b = (byte)i;
- s'il y a plus de 8 chiffres ;
- si la chaîne commence par un + ou un -
Merci pour ta réponse, mon erreur devait venir de ca puisque ca marche maintenant.
Topic résolu !