IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

avec Java Discussion :

Convertir une suite binaire (string) en byte ?


Sujet :

avec Java

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2011
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2011
    Messages : 18
    Points : 12
    Points
    12
    Par défaut Convertir une suite binaire (string) en 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[].

  2. #2
    Modérateur
    Avatar de wax78
    Homme Profil pro
    Chef programmeur
    Inscrit en
    Août 2006
    Messages
    4 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chef programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 4 073
    Points : 7 978
    Points
    7 978
    Par défaut
    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); ....
    (Les "ça ne marche pas", même écrits sans faute(s), vous porteront discrédit ad vitam æternam et malheur pendant 7 ans)

    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2011
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2011
    Messages : 18
    Points : 12
    Points
    12
    Par défaut
    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

  4. #4
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 551
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 551
    Points : 21 607
    Points
    21 607
    Par défaut
    Ouaip, c'est à cause du fait que les bytes sont signés, en Java, c'est chiant.

    Méthode simple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    int i = Integer.parseInt("11111111", 2);
    byte b = (byte)i;
    Attention, cela présuppose que la String à transformer est correcte. Notamment, ça ne lèvera pas d'exception et rendra un résultat arbitraire :
    - s'il y a plus de 8 chiffres ;
    - si la chaîne commence par un + ou un -
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2011
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2011
    Messages : 18
    Points : 12
    Points
    12
    Par défaut
    Merci pour ta réponse, mon erreur devait venir de ca puisque ca marche maintenant.

    Topic résolu !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 4
    Dernier message: 03/07/2012, 13h59
  2. [Débutant] Convertir une colonne d'un datagridview byte en string
    Par batmane dans le forum VB.NET
    Réponses: 2
    Dernier message: 07/01/2012, 12h10
  3. convertire une suite binaire en une Image
    Par est09 dans le forum Windows Communication Foundation
    Réponses: 1
    Dernier message: 07/05/2009, 14h07
  4. Réponses: 14
    Dernier message: 29/06/2005, 10h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo