Parcourir un fichier en lecture

Problème: Au moment ou l'on ouvre un fichier, on ne connait pas sa taille: son nombre d'enregistrements (0,10,10000) pour un fichier texte, sa taille en octets pour un fichier binaire.

Solution: Il existe une marque de fin du fichier (EOF pour end of file).


Prérequis: Le programmeur ouvre (instruction d'ouverture) le fichier en lecture, le pointeur se positionne automatiquement au début du fichier.

Principe de lecture dans un fichier texte: Chaque lecture (instruction de lecture) ramène un enregistrement en mémoire. Il existe un pointeur d'enregistrement qui se place au début quand on ouvre le fichier en lecture et qui progresse au fur et à mesure de la lecture. La fin du fichier est atteinte lorsque la dernière lecture a atteint la marque de fin de fichier. Le programmeur ferme ensuite le fichier (instruction de fermeture)

Principe de lecture dans un fichier binaire: Idem fichier texte sauf que chaque lecture ramène un certain nombre d'octets en mémoire (en fonction de la taille du type de la variable).

==> Chaque opération de lecture fait donc avancer le pointeur.
Exemple d'un fichier de points:
(1,12)
(5,60)
(10,20)
EOF

la première lecture ramène (1,12)
la seconde lecture ramène (5,60)
la troisième lecture ramène (10,20)
la quatrième lecture ramène EOF


Conclusion: Pour parcourir un fichier en lecture il faut faire une itérative (un while) dont le test de sortie est la lecture de EOF.
suivant                    plan