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

Entrée/Sortie Java Discussion :

récupérer des bits


Sujet :

Entrée/Sortie Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Mars 2007
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 34
    Par défaut récupérer des bits
    Bonjour

    Avec la méthode readBytes je lis les bytes envoyés par mon client mais j'ai besoin des bits les constituant. Alors je ne sais pas comment les avoir. Si quelqu'u peur m'aider. Merci.

  2. #2
    Membre émérite Avatar de remika
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    806
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 806
    Par défaut
    En faisant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Integer.toString(le_byte,2);
    J'obtiens les bits sous forme de String. Mais je ne pense pas que ce soit la bonne méthode.

  3. #3
    Membre Expert
    Avatar de ®om
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    2 815
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 815
    Par défaut
    Citation Envoyé par idjou
    Bonjour

    Avec la méthode readBytes je lis les bytes envoyés par mon client mais j'ai besoin des bits les constituant. Alors je ne sais pas comment les avoir. Si quelqu'u peur m'aider. Merci.
    Pour avoir chacun des bits successivement à partir d'un byte:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    byte b = //un byte;
    for(int i = 0; i < 8; i++) {
        //parcours du lsb au hsb (poids faibles vers poids forts)
        boolean bit = ((b >> i) & 1 ) != 0;
        // le bit est maintenant stocké dans le booléen
    }
    Tu dois pouvoir virer des parenthèses, mais bon c'est plus lisible sans s'occuper des priorités d'opérateurs.

  4. #4
    Membre averti
    Inscrit en
    Mars 2007
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 34
    Par défaut
    je ne comprends pas bien l'instruction. Que signifie le !=0

  5. #5
    Membre émérite Avatar de remika
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    806
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 806
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ((b >> i) & 1 ) != 0
    teste la différence donc renvoie un boolean, c'est pareil dans un if, c'est le "boolean résultant" qui est testé.

  6. #6
    Membre averti
    Inscrit en
    Mars 2007
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 34
    Par défaut
    Ca marche après il me suffit de mettre un int à 0 si false et à 1 si true. Merci

  7. #7
    Membre Expert
    Avatar de ®om
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    2 815
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 815
    Par défaut
    Citation Envoyé par idjou
    Ca marche après il me suffit de mettre un int à 0 si false et à 1 si true. Merci
    Si tu le veux dans un int:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    int bit = (b >> i) & 1;

  8. #8
    Membre averti
    Inscrit en
    Mars 2007
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 34
    Par défaut
    Ca marche. Merci encore.

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

Discussions similaires

  1. Réponses: 8
    Dernier message: 23/01/2007, 21h02
  2. Récupérer des données Excel vers Interbase ...
    Par Djedjeridoo dans le forum InterBase
    Réponses: 2
    Dernier message: 20/07/2003, 18h16
  3. cherche module ou langage pour récupérer des données audio..
    Par Ry_Yo dans le forum Langages de programmation
    Réponses: 5
    Dernier message: 12/05/2003, 17h44
  4. Travailler avec des bits
    Par Vulvulune dans le forum Langage
    Réponses: 5
    Dernier message: 02/03/2003, 19h09
  5. Question : ordre des bits ?
    Par Choupi dans le forum C
    Réponses: 3
    Dernier message: 11/02/2003, 06h22

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