Chapitre 5 - Les Fichiers
Chapitre 5 - Les Fichiers
Chapitre 5 - Les Fichiers
Declaration
VARIABLE f : file of type_element;
Declaration
TYPE type_element = enregistrement
age : entier;
majeur : booleen;
fin;
VARIABLE f : file of type_element;
e : type_element;
DEBUT
nomf← "enrfichier.bin";
assigner (f, nomf);
reecrire (f);
nb ← 0;
Tant que non fin(f) faire
debut
nb ← nb+1;
lire(f, t[nb]);
fin;
fermer (f);
FIN;
24/12/2020 Algorithmique et Programmation 2 278
Positionnement dans un
fichier d’element
La fonction positionner(f,deplacement): permet de positionner le
curseur à un endroit précis ‘déplacement’ à partir du debut.
f=fopen(nomdufichieraouvrir, ’’ModeOuverture’’);
Exemple
•FILE * f = NULL;
Exemple ?
Cette fonction lit une chaîne dans le fichier. Ça vous évite d'avoir à lire les
caractères un par un. La fonction lit au maximum une ligne (elle s'arrête
au premier\n qu'elle rencontre).
fscanf: lit une chaîne formatée. C'est le même principe que la fonction
scanf, là encore.
24/12/2020 Algorithmique et Programmation 2 289
Se deplacer dans un fichier
Chaque fois que vous ouvrez un fichier, il existe en effet un curseur qui
indique votre position dans le fichier. Vous pouvez imaginer que c'est
exactement comme le curseur de votre éditeur de texte prefere (tel Bloc-
Notes). Il indique où vous êtes dans le fichier, et donc où vous allez écrire.
En résumé, le système de curseur vous permet d'aller lire et écrire à une
position précise dans le fichier.
•ftell: indique à quelle position vous êtes actuellement dans le
fichier ;
•rewind: remet le curseur au début du fichier (c'est équivalent
à demander à la function fseek de positionner le curseur au
début).
•fseek(f, 2, SEEK_SET);
•fseek(f, -4, SEEK_CUR);
•fseek(f, 0, SEEK_END);
fwrite(&objet,sizeof(objet),nombre,fichier)
int age;
char nom[30];
char prenom[30];
char adresse[60];
int nombreFreres;
}SPersonne ;
Personne={23,’diop’,’moussa’,’sanar’,4)
fwrite( &personne , sizeof(personne) , 1 , f);