Structure d'un fichier binaire?

Résolu
pinje Messages postés 129 Date d'inscription vendredi 25 juillet 2003 Statut Membre Dernière intervention 24 août 2006 - 4 mai 2006 à 10:32
NHenry Messages postés 15130 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 17 juin 2024 - 4 mai 2006 à 15:32
Bonjour a tous,

J'aimerais lire un fichier binaire contenant les resultats d'un calcul, or je ne connais pas a l'avance sa structure...

Est ce qu'il est possible de "voir" ce qu'il y a dans un fichier binaire, genre le nombre de double, single, ou les string, et comment elles sont organises?

Merci

6 réponses

NHenry Messages postés 15130 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 17 juin 2024 159
4 mai 2006 à 15:32
Bonjour

1) Je ne peux rien dir si je n'est pas la sortie hexa .
2) Dans un fichier tous les octets sont consécutifs, mais pour faciliter la lecture, l'éditeur sépare le fichier en plusieurs lignes, donc à chaque début de ligne il affiche l'offset du premier ocete (sa position dans le fichier quoi).
3) En binaire tu peux tout lire et tout écrire, si tu lit 4 octets au lieu de 8, le reste de ta lecture sera décalée.
4) Voila, par exemple le code hexa &h20, sera un espace.

Il est plus facile de batiser kk1 que de la convertir. (surtout en programmation)
Une question se pose sur le forum, pas en privé
NHenry (VB6, VBA excel, VB.NET, C++, C#.Net)
3
NHenry Messages postés 15130 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 17 juin 2024 159
4 mai 2006 à 12:55
Bonjour

Oui, recherche un éditeur hexadécimal sur google.

Il est plus facile de batiser kk1 que de la convertir. (surtout en programmation)
Une question se pose sur le forum, pas en privé
NHenry (VB6, VBA excel, VB.NET, C++, C#.Net)
0
Gobillot Messages postés 3140 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 11 mars 2019 34
4 mai 2006 à 13:26
Salut,

"voir" oui,

par contre pour savoir à quoi ça correspond, il vaut mieux connaître le format

Daniel
0
pinje Messages postés 129 Date d'inscription vendredi 25 juillet 2003 Statut Membre Dernière intervention 24 août 2006
4 mai 2006 à 13:42
Merci pour votre aide.

NHenry: par contre j'ai un peu de mal avec l'editeur hexadecimal. A quoi correspondent les 3 parties? J'ai pas vos connaissances!! Est ce que partie 1 serait l'adresse, partie 2 la valeur, et partie 3 ce que ca donnerais en ASCII???

Partie 1:
00000000h:

Partie2:
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00;

Partie 3:
................
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
NHenry Messages postés 15130 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 17 juin 2024 159
4 mai 2006 à 14:47
Bonjour

Partie1 : offset auquel se trouve le premier octet de la ligne
Partie2 : Suite des octets sous forme hexadécimale
Partie3 : Traduction des octets en code Ascii.

Il est plus facile de batiser kk1 que de la convertir. (surtout en programmation)
Une question se pose sur le forum, pas en privé
NHenry (VB6, VBA excel, VB.NET, C++, C#.Net)
0
pinje Messages postés 129 Date d'inscription vendredi 25 juillet 2003 Statut Membre Dernière intervention 24 août 2006
4 mai 2006 à 15:08
question 1:
Ok, donc si j'ai bien compris si la premiere valeur de mon fichier binaire est un integer de 4 bytes, ca correspond au 4 premieres valeurs hexadecimal du fichier, si ensuite j'ai une string de 40 Char (2 bytes), sa correspondra au 80 valeurs suivantes, etc...??

question 2:
qu'appelle tu l'offset de la ligne? car les lignes de caracteres hexadecimal que je vois sont juste la pour mieux voir a l'ecran ce qu'il y a dans mon fichier? Dans le fichier binaire tout est ecris l'un au bout de l'autre, ou c'est des lignes de 16 octets misent bout a bout?

Question 3:
si a la lecture de mon fichier binaire je lis un integer (4
bytes) a la place d'un double (8 bytes), tout le reste de ma lecture sera decale de 4
bytes ou j'aurai un bug?

question 4:
quand tu dis "Partie3 : Traduction des octets en code Ascii.", si je comprends bien ce que je lis a l'ecran, chaque caractere ASCII correspond a un octet?

Desole d'etre aussi lourd, mais lire un fichier binaire est une toute nouvelle science pour moi!!

D'avance, merci pour tes reponses!

Jeremy
0
Rejoignez-nous