Fonction recherche dans un fichier .

Fermé
atuuh Messages postés 16 Date d'inscription mercredi 22 janvier 2014 Statut Membre Dernière intervention 28 février 2015 - 6 avril 2014 à 11:47
sambia39 Messages postés 610 Date d'inscription vendredi 31 juillet 2009 Statut Membre Dernière intervention 9 février 2023 - 7 avril 2014 à 13:12
Bonjour , J'ai un petit projet en Dev C++ & j'ai besoin de votre aide ! J'ai un fichier composé de plusieurs structures CLIENT ( Décrite a la fin de la question ) . J'aimerais rechercher un client a partir de sa CIN ( carte d'identité nationale ) Quelqu'un aurait une fonction qui marche ? J'aimerais qu'elle soit écrite le plus simplement possible ! MERCI :D
typedef struct
{
char nom[20];
char pren[20];
date date_n;
int cin;
adr adresse;
}client;
_______ Adresse _____
typedef struct
{
char ville[20];
int codep;
}adr;
______Date_______
typedef struct
{
int j,m,a;
}date;
A voir également:

2 réponses

fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 844
6 avril 2014 à 12:10
Bonjour,

Déjà, il te faut une fonction de lecture ligne par ligne pour récupérer tous les enregistrements d'une ligne.
Ensuite, si tu as la place, tu stockes toutes les données client en mémoire.
Et enfin, il te reste plus qu'à faire une boucle pour rechercher le client (en recherchant nom, prend, adresse, date. Tu peux utiliser strcmp() pour comparer les char).

Plutôt que te filer la réponse, je te laisse nous proposer ton code en fonction de ce que je t'ai dit pour qu'on puisse te corriger.

Et, pense à utiliser la balise "code" (situé à droite du bouton "souligné") lorsque tu posts un code.

Cdlt,
0
atuuh Messages postés 16 Date d'inscription mercredi 22 janvier 2014 Statut Membre Dernière intervention 28 février 2015
6 avril 2014 à 12:17
merci pour les conseils x) Une derniére question ! Comment faire pour avancer dans un fichier qui comporte plusieurs lignes ?
0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 844
6 avril 2014 à 12:34
Tu t'en préoccupes pas.
Tu lis une ligne complète avec fread().
Lors que tu referas ton prochain fread(), il passera à la ligne suivante.
0
atuuh Messages postés 16 Date d'inscription mercredi 22 janvier 2014 Statut Membre Dernière intervention 28 février 2015
6 avril 2014 à 13:17
Peut tu faire la fonction lecture ligne par ligne pour moi ? J'ai jamais utilisé de Fread avant :v
0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 844
6 avril 2014 à 13:38
C'est l'occasion d'apprendre : http://fr.openclassrooms.com/informatique/cours/lecture-et-ecriture-de-fichiers-en-mode-binaire/lecture-par-fread

Cdlt,
0
atuuh Messages postés 16 Date d'inscription mercredi 22 janvier 2014 Statut Membre Dernière intervention 28 février 2015
6 avril 2014 à 17:06
Laisse tomber . ! j'ai commencé avec Fprintf au début & J'peut pas utilisé Fread si j'ai utilisé Fprintf donc c pas la peine , je vais me débrouiller tout seul , Merci qd meme
0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 844
6 avril 2014 à 17:11
C'est dommage d'utiliser fprintf() au lieu de fwrite() lorsqu'il est question de structure.
Grosso modo, avec fprintf() pour écrire dans le fichier, tu dois préciser chacun des champs composant la structure (et celles la composant). Avec fwrite(), tu dis simplement d'écrire la structure dans le fichier. Cela facilite également les évolutions.
0