Bonjour à toutes et à tous.
Je dois traiter un fichier binaire dans lequel a été sauvé les données d'une structure. Je ne connais pas le type de cette structure mais seulement le type de chacun des champs comme suit :
Je lis le fichier de la façon suivante : je lis un double, un double, ... etc en fonction du type suivant de la structure. Le problème est que le résultat lue n'est pas cohérent.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32 struct UneAutreStructure { enum unsigned char }; struct LaStructureALire { double double double double double double double double enum double double enum double struct UneAutreStructure double double double double double double unsigned long double };
J'ai donc vérifié si la taille des données écrites est égale à la taille des données lues mais en fait quand je compare la taille de la structure et la somme de la taille de tous ses membres je ne trouve pas d'égalité, est ce normal ?
Sachant que la structure est enregistrée telle quelle et non pas champ par champ, suis je obligé de créer une structure avec des champs équivalent pour lire les données correctement ou bien puis effectuer la lecture des données de la structure champ par champ depuis le fichier ?
Connaissant les types des champs de la structure je peux effectivement en construire une identique et venir la lire d'un coup mais j'airmerai tout de même savoir comment est gérée la sérialisation et désérialisation d'une structure.
D'avance merci pour vos réponses.
++
Partager