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[].
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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 : Sélectionner tout - Visualiser dans une fenêtre à part 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 : Sélectionner tout - Visualiser dans une fenêtre à part
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 !
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager