si j'ai bien compris, tu veux lire des séries de 8 caractères '0' ou '1' dans ton fichier texte, et les convertir en octets que tu dois écrire dans ton fichier binaire ?
tu peux te faire une fonction de conversion à qui tu passes un tableau de 8 caractères et qui te renvoit l'octet correspondant :
Code :
- unsigned char conv( char* txt )
- {
- unsigned char c=0; // l'octet qui sera renvoyé
- unsigned char bit=0x1; // bit de poids le plus faible ; par la suite, 'bit' contiendra le bit de poids courant
- int i;
- for( i=7 ; i>=0 ; --i )
- {
- if( txt[i]=='1' ) // on suppose que txt ne contient que des '0' ou des '1'
- c |= bit; // on ajoute le bit courant
- bit = bit<<1; // on décale d'un cran
- }
- return c;
- }
|
tu peux aller voir sur la page d'Emmanuel Delahaye : il me semble qu'il y a une bibliothèque de fonctions de manipulations de bits.