Lire dans un fichier.txt en C

daleny31 Messages postés 222 Date d'inscription   Statut Membre Dernière intervention   -  
ydurce Messages postés 78 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour, j'ai lu pas mal de tuto sur l'utilisation des fichiers txt mais je ne comprend pas grand chose ! Alors j'espere quand vous donnant mon cas précis vous pourrez m'éclairer.

Voila.
J'ai un fichiet texte qui contient plusieurs lignes du style :

ITALIE; ROME; 39
ESPAGNE; MADRID; 34
etc...

avec pays capitale et un entier.

Je souhaiterais chercher si un pays ( préalablement lu au clavier ) est présent dans la liste !!
J'ai lu plein de topic sur fscanf mais j'ai rien pigé...
Merci.




A voir également:

1 réponse

ydurce Messages postés 78 Date d'inscription   Statut Membre Dernière intervention   18
 
pour lire dans un fichier texte, il faut:

ouvrir le fichier en mode text avec une fonction fopen qui retourne un pointeur de fichier de type FILE *.
puis lire séquentiellement ( c'est à dire que chaque lecture incrémentera automatiquement le pointeur) les données du fichier à l'aide de fonction comme fgets qui retourne une ligne de texte compléte ou NULL si la fin du fichier (ou une erreur) est trouvée.
Sur chaque lecture de ligne, vous pouvez intégrer votre traitement (comparaison de chaines de caractéres .....).
Une fois la fin de fichier atteinte, il vous reste à fermer le fichier avec un fclose().

bon courage.
0
loupius Messages postés 697 Date d'inscription   Statut Membre Dernière intervention   148
 
Ta réponse est correcte à deux petits détails près:
- FILE* est un pointeur sur un objet 'flux' dont le type est opaque.
- sous Linux, il est inutile de préciser si on ouvre en mode 'texte' ou 'binaire'; sur un système Posix il n'y a pas de différentiation. Par contre dans le cas présent il est bien d'ouvrir le fichier en mode 'lecture' (r, r+, a+).
Bonne soirée.
0
ydurce Messages postés 78 Date d'inscription   Statut Membre Dernière intervention   18
 
la notion d'objet en C n'existe pas.
on peut limiter la réponse à linux et dire qu'un fichier binaire est interprété comme un fichier texte mais c'est un raccourci inutile et trompeur pour d'autres OS.
sinon merci de corriger ma réponse.
0