Lecture d'un fichier binaire (fichier C3D) - C++ - Programmation
Marsh Posté le 23-02-2006 à 09:10:31
ajoute une fonction int main(int argc, char **argv), appelle la en ligne de commande.
Dans cette fonction, tu dépouilles argv pour récupérer le nom du fichier c3d passé en paramètre, puis tu appelles "litentete(...)" avec le nom du fichier en paramètre.
Ensuite, tu modifies "litentete(...)" en rajoutant à la fin les printf des valeurs que tu souhaites visualiser.
C'est du chinois pour toi ou pas?
vw
Marsh Posté le 23-02-2006 à 11:51:06
Non, c'est pas ça le souci.
Je voudrais savoir comment je peux au moins lire l'entête, qui est un bloc de 512 bytes de long, et qui a une structure correspondante à ENTETEC3D donnée dans le code, via la STL par exemple...
Je dois utiliser fstream pour lire un buffer de 512 bytes et transtyper tout ça en ENTETEC3D? Ou bien ya plus propre?
Marsh Posté le 23-02-2006 à 11:59:10
ton en-tete doit etre une instance d'une classe qui fournit une méthode de déserialisation par exemple ?
Marsh Posté le 23-02-2006 à 12:57:33
Ben je pense oui...
L'entête correspond à cette structure:
Code :
|
Marsh Posté le 22-02-2006 à 23:58:32
Bonsoir à tous,
pour un programme que je suis en train de développer, je dois extraire des informations d'un fichier C3D écrit en binaire, et qui contient des renseignements sur le résultat d'une capture de mouvement.
Le souci, c'est que je n'ai jamais eu à faire ce genre de lecture, et que je sais pas comment m'y prendre.
Pour commencer, je voudrais juste pouvoir extraire les infos de l'entête du fichier.
Dans la doc (http://www.c3d.org/HTML/default.htm), il y est dit que ce fichier est composé de multiples blocs de 512 bytes.
All C3D files contain a minimum of three sections of information:
-----------------------------------------------------------------
A single, 512 byte, header section
-----------------------------------------------------------------
A parameter section consisting of one, or more, 512-byte blocks.
-----------------------------------------------------------------
3D point/analog data section consisting of one, or more, 512-byte blocks.
Cette page me donne les différentes composantes de cet entête:
http://www.c3d.org/HTML/description.htm
On m'a filé un code en C qui lit cet entête, mais j'y pipe rien du tout, je vous la donne...
Comment je peux lire correctement cet entête en bon C++?
Merci d'avance
Mike