Comment ecrire/lire bit à bit dans un fichier en langage c/c++ ?

Comment ecrire/lire bit à bit dans un fichier en langage c/c++ ? - C++ - Programmation

Marsh Posté le 02-03-2005 à 10:43:30    

Bonjour,
 
Je souhaiterai pouvoir ecrire bit à bit dans un fichier mais
impossible de trouver comment faire. Je souhaiterai
pouvoir ecrire soit un bit &, soit un bit 0.  
De meme je souhaiterai pouvoir lire bit à bit.
Pouvez vous me renseigner ?  :sweat:  :sweat:  
 
Merci d'avance  :hello:  :hello:


Message édité par davidoou le 02-03-2005 à 10:47:02
Reply

Marsh Posté le 02-03-2005 à 10:43:30   

Reply

Marsh Posté le 02-03-2005 à 10:52:07    

tu peux pas directement, faut te faire une brochette de fonction pour ca

Reply

Marsh Posté le 02-03-2005 à 11:10:44    

Vous avez pas plus de précisions svp ? :sweat:

Reply

Marsh Posté le 02-03-2005 à 12:00:13    

boah la je me sens feneant. mébon

Code :
  1. typedef struct litMonbit{
  2.   FILE *f;
  3.   int bitCourant;
  4.   unsigned char octet;
  5. }litMonbit;
  6. litMonbit init(const char *nomF) {
  7.   litMonbit  truc;
  8.   truc.f = fopen(nomF);
  9.   truc.bitCourant = 7;
  10. }
  11. unsigned char litBit(litMonBit *truc) {
  12.   truc->bitCourant++;
  13.   if (truc->bitCourant >7) {
  14.      fread(&truc->octet,1,1,truc->f);
  15.      truc->bitCourant = 0;
  16.    } 
  17. return (truc->octet & (1<<truc->bitCourant))>>truc->bitCourant;
  18. }
  19. void machin() {
  20. litMonbit lire = init("c:\\coin" );
  21. unsigned char premierBit = litBit(&lire);
  22. unsigned char deuxiemeBit = litBit(&lire);
  23. ...
  24. }


 
c'est tapé dans le forum, je garanti pas que ca compile, le code est moche, toussa, c'est pour l'idée


Message édité par chrisbk le 02-03-2005 à 12:00:58
Reply

Marsh Posté le 02-03-2005 à 12:03:05    

(et c'est du C, hein, en C++ t'es prié de me faire un truc plus joli [:petrus75])

Reply

Marsh Posté le 02-03-2005 à 12:21:28    

class ReadMyBit {}; ?  

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed