begin process at 2012 05 29 23:00:10
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Au secours

 > 

Lecture de données Hexa sur 4octets avec inversion dees bits de poids faible/fort


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Lecture de données Hexa sur 4octets avec inversion dees bits de poids faible/fort

jeudi 15 avril 2004 à 10:08:12 | Lecture de données Hexa sur 4octets avec inversion dees bits de poids faible/fort

VTS_35

bonjour,

G un gros problème de lecture de données.
Je bosse sur des fichiers genre images bmp et je dois en lire l'entete.

voici les première variables de l'entete:

struct head {
char Signature[5]; //signature du fichier sur 5 octets
char Version[5]; //version du fichier, 5o
char ASCIIEndOfFile;// pointeur de fin de fichier, 1o
unsigned long MainHeaderSize;// taille de l'entete principale 4o
unsigned long FrameHeaderSize;// taille de la frame principale 4o
...
}entete;


et voici le code hexa du fichier:

0 | 43 45 44 00 00 35 2e 30 30 00 1a 00 08 00 00 00
10 | 04 00 00 ...

Ce qui donne:
signature : 43 45 44 00 00 => "CED"
version : 35 2e 30 30 00 => "5.00"
ASCIIEndOfFile : 1a => '->'
MainHeaderSize : 00 00 08 00 => 2048
FrameHeaderSize: 00 00 04 00 => 1024
...

Sauf que quand je tente de lire les données, j'obtiens bien la signature et la version qui sont des chaines de caractères, mais pour tout ce qui est donnée numérique (MainHeaderSize et FrameHeaderSize par exemple), je trouve 0.
Car il lit pas au bon format! par exemple, au lieu de lire 00 00 08 00 il lit les données en inversant les octets deux par deux (je sais, C un peu dur à suivre!)

en gros, sur le fichier on a 00 08 00 00, ça devrait se traduire par 00 00 08 00 mai le programme le lit comme 00 00 00 08

Je C pas comment y remédier... Surtout que je me suis pas remis au C/C++ depuis un bail...

Bref, si qqun pouvait m'aider, je serait très reconnaissant! =)

Merci d'avance
jeudi 15 avril 2004 à 17:11:51 | Re : Lecture de données Hexa sur 4octets avec inversion dees bits de poids faible/fort

ymca2003

par défaut les membres de la structure sont alignés sur 4 octets (ou 8 cela dépend du compilo).

lorsque tu as des structures qui lise des données dans des fichiers il faut aligner les membres sur 1 octet :

#include <pshpack1.h>
struct
{
};
{include <poppack.h>
vendredi 16 avril 2004 à 10:31:02 | Re : Lecture de données Hexa sur 4octets avec inversion dees bits de poids faible/fort
vendredi 16 avril 2004 à 10:31:41 | Re : Lecture de données Hexa sur 4octets avec inversion dees bits de poids faible/fort

VTS_35

MERCI!

Je V me créer une petite fonction pour lire 4octets.. ça devrait aller...


Cette discussion est classée dans : fichier, version, données, signature, entete


Répondre à ce message

Sujets en rapport avec ce message

comment inserer des données dans un exe [ par vdox05 ] Bonjour,J' aimerais inserer les données d' un fichier image à l' interieur d' un executable.En fait il faudrait qu' il y ait deux fichiers à l' interi constante ds fichier d'entete [ par bidules ] bonjour,j'ai un probleme avec des constante declarer ds un fichier d'entete.Je travail en c.le compilateur dit que la constante est deja defini ds le Acquisition de Données a partir d'un fichier texte [ par madcow41 ] 'lutBon j'ai un fichier qui contient des lignes formées ainsi :123.145.569.188 - - [12/Apr/2001:00:08:49 +0200] "GET /pagehtml.htm HTTP/1.x" et le res fichier:Pb récuperation données [ par jagxx ] Bonjour,kan je récupère les données d'un fichier ds un tableau de structures avec:while( ! fContact.eof()){fContact >> elem->nom >> elem->tel;temp[i]. Données en binaire [ par didrocks ] J'aimerai, à l'instar de denini dans "lire/ecrire fichier texte a plusieurs colonnes" faire un fichier de données dans lequel je pourrai écrire à part segmentation d'un fichier pour utilisation dans une base de données [ par matthieugregoire ] Bonjour à tous!voilà je vous expode mon problème: je dois traiter un fichier texte pour le rendre utilisable par une base de donnée. Pour cela à chaqu recuperation de données et fichier .ini! [ par boulaxx ] bonjour!j'ai pls questions: - je voudrais recuperer les données qui st contenues ds les champs de ma boite de dialogue... - p Librairie graphique [ par neo888 ] Lut à tous,Je suis novice en prog C/C++.Voila j'utilise borland cbuilder6 (version perso) et j'ai voulu utiliser le graphique:#includeet a mon grand r lire les données d'un fichier langage C [ par khalidlyon ] Bonjour,pb. du C.Comment on peux associer au tableaux X et Y les valeurs qui se trouvent dans un fichier "donner.dat" sous la forme suivant:dim 5X récupération de données excel avec vb.net et bascule vers un fichier unique .txt [ par coeurdenoir ] Bonjour,je suis un débutant alors ne soyez trop dur avec moi.Voila je travaille sur un projet informatique et aujourd'hui je bloque sur un point qui


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,359 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales