Ecriture Fichier Binaire bit a bit [Résolu]

nobpn 13 Messages postés jeudi 22 avril 2004Date d'inscription 9 janvier 2006 Dernière intervention - 7 janv. 2006 à 14:28 - Dernière réponse : nobpn 13 Messages postés jeudi 22 avril 2004Date d'inscription 9 janvier 2006 Dernière intervention
- 9 janv. 2006 à 21:06
Bonjour,



Je souhaiterai ecrire dans un fichier bianire bit a bit.



Je m'explique : il s'agit de compression :

je recupere un tablo de int = les bits qui compose mon entier de
départ, si celui ci est egale a 00000000 alors je souhaiterai ecrire
seulement 1 bit 0.



Tout ce que j'ai trouvé jusqu'a present m'ecri : 00000000. daonc pas de compression !



N'hésitez pas à poser un bout de code si possible .



D'avance merci !

--------------------------------------------------
Me... That's all, that's enough!
--------------------------------------------------
Afficher la suite 

Votre réponse

3 réponses

Meilleure réponse
BruNews 21054 Messages postés jeudi 23 janvier 2003Date d'inscription 7 novembre 2014 Dernière intervention - 7 janv. 2006 à 14:48
3
Merci
On n'écrit ni n'adresse 1 bit, la p^lus petite entité adressable est l'octet. On peut seulement manipuler les bits à l'intérieur d'un octet.

ciao...
http://dev.winsysdev.com
BruNews, MVP VC++

Merci BruNews 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 85 internautes ce mois-ci

Commenter la réponse de BruNews
Pamaury 341 Messages postés jeudi 3 avril 2003Date d'inscription 17 juin 2008 Dernière intervention - 8 janv. 2006 à 13:54
0
Merci
Pour manipuler des bit: un seul moyen: accumuler les bit et quand on en a 8->un octet:

class BitWriter:
{
...
....
void AddBit(bit b);

int nb_bits;
unsigned char cur_byte;// initialise à 0
};

void BitWriter::AddBit(bit b)
{
cur_byte=cur_byte<<1 + b;
nb_bits++;
if(nb_bits==8)
{
WriteByte(cur_byte);
cur_byte=0;
nb_bits=0;
}
}

A m a u r y
Commenter la réponse de Pamaury
nobpn 13 Messages postés jeudi 22 avril 2004Date d'inscription 9 janvier 2006 Dernière intervention - 9 janv. 2006 à 21:06
0
Merci
Merci de vos réponses !



Meme si celle ci me conviennent pas... lol



Tant pis, je vais remplir 1 octet avant de lécrire.



Encore merci !



Schuuuuuuuuuuuuuuuuuuuuuuuuuuuuuus

--------------------------------------------------
Me... That's all, that's enough!
--------------------------------------------------
Commenter la réponse de nobpn

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.