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

C# Discussion :

bit to byte en C#


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    102
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 102
    Par défaut bit to byte en C#
    Bonjour a tous,
    j'ai une chaine "String" qui contien de bites (du binaire) j'aimerai la convertir en Byte en découpant la chaine 8 par 8 et la convertir en Byte merci de maidee

  2. #2
    Membre expérimenté

    Inscrit en
    Septembre 2004
    Messages
    105
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 105
    Par défaut
    Je pense que tu dois procéder en deux étapes:
    1. Convertir les bits en bytes. Pseudo-code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    var mesBytes = new List<byte>();
    for(i = 0; i < maChaineDeBits.Length; i+= 8)
      mesBytes.Add(ConvertirDeBitsVersUnByte(maChaineDeBits.Substring(i,8)));
    2. Convertir les bytes en une string en bytes en utilisant: System.Text.Encoding.UTF8.GetString(mesBytes.ToArray()).

    ConvertirDeBitsVersUnByte() peut être implementé de plusieurs façons. Par exemple, un truc du genre:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    byte resultat = 0;
    for (i = 0; i < 8; i++)
      resultat = (resultat << 1) + (chaineDeBits[7 - i] == '1' ? 1 : 0);
    return resultat;

  3. #3
    Membre confirmé
    Inscrit en
    Septembre 2007
    Messages
    114
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 114
    Par défaut
    Une autre solution, serait tout simplement d'utiliser la classe convert :
    public static byte ToByte(string value, int fromBase)
    Member of System.Convert
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    List<byte> mesBytes = new List<byte>();
    for(i = 0; i < maChaineDeBits.Length; i+= 8)
       mesBytes.Add (Convert.ToByte ( maChaineDeBits.SubString(i,8),2));
    Et voila

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

Discussions similaires

  1. Bits dans byte pour mettre a jour label
    Par untipy dans le forum C#
    Réponses: 3
    Dernier message: 04/07/2010, 11h29
  2. Question sur Bit / Byte / Octet
    Par Mr.joker dans le forum Protocoles
    Réponses: 6
    Dernier message: 29/10/2006, 20h04
  3. bits,bytes,bit word ?
    Par Battosaiii dans le forum C
    Réponses: 2
    Dernier message: 17/03/2006, 11h29
  4. Accéder facilement à chaque bit d'un byte
    Par bobby-b dans le forum Langage
    Réponses: 6
    Dernier message: 10/07/2004, 14h07
  5. opérations sur les bits d'un byte
    Par petitours dans le forum C++Builder
    Réponses: 4
    Dernier message: 10/02/2004, 20h42

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