17.1. Contenu d’un fichier binaire et de son équivalent texte

Ce paragraphe peut être sauté dans un premier temps. Il permet de mieux comprendre ce que contiennent un fichier binaire et un fichier texte utilisés pour stocker les mêmes données : ici un réel, un entier et une phrase. Exemple 95. Contenu d’un fichier texte et binaire (avec des données identiques) On veut stocker le réel double ‐1.60217e‐19, l’entier short ‐25724 et la chaîne de 5 caractères "bof !", ces trois informations étant contenues dans une variable structurée var_stru. Pour chaque mode d’accès (binaire ou texte), voici l’instruction C à utiliser ainsi que le contenu résultant pour les fichiers binaires et textes.
Solution 1 : fichier en accès binaire
Solution 2 : fichier en accès texte
Taille des fichiers : – La taille du fichier binaire de la solution 1 est toujours la même (8+2+6=16 octets), quelles que soient les valeurs du réel et de l’entier. – la taille du fichier texte de la solution 2 dépend beaucoup du nombre de chiffres significatifs du réel et de l’entier, et donc des codes formats utilisés dans fprintf. Ici, on obtient 26 octets, y compris les deux espaces rajoutés pour séparer les valeurs. Contenu affiché par un éditeur de texte : Si on ouvre le fichier avec un éditeur de texte quelconque, on obtient bien sûr « n’importe quoi » pour le fichier 1 (il ne contient pas des codes ASCII), et le texte attendu pour le fichier 2 :
Contenu hexadécimal de chaque fichier Les octets des deux fichiers valent les valeurs hexadécimales suivantes (obtenues par un programme) :
|