A voir également:
- Arduino fopen
- Probleme fopen (C) ✓ - Forum Programmation
- Warning: fopen ✓ - Forum Webmastering
- Arduino math.h - Forum C++
- Grafcet arduino - Forum C
- Arduino switch case string ✓ - Forum C++
1 réponse
Le plus simple c'est que ton fichier soit écrit de telle façon que tu ai une information par ligne, mais j'ai l'impression que c'est le cas vu ce que tu as écrit.
Dans l'exemple qui suit je t'ai mis comment ouvrir et fermer un fichier (sans entrer dans les détails de la structure FILE* qui est nécessaire aux fichiers) et comment simplement lire et écrire dedans à raison d'une ligne à la fois (c'est ce qu'il y a de plus simple à mon avis).
Après il te reste plus qu'à formater les données que tu récupères comme bon te semble, inserer dans un tableau, comparaison de chaine, etc.
Mais je ne vais pas te faire tout le boulot non plus !!! :)
Voila tu me diras si ça te conviens, si tu veux plus d'explication n'hésites pas mais je pense avoir été assez clair et assez complet.
Ciao bon courage.
Ben.
main()
{
FILE *P_FICHIER; /* pointeur sur FILE */
char NOM_FICHIER[30], DONNEES[30];
int C,NB_ENREG;
/* Première partie :
Créer et remplir le fichier */
printf("Entrez le nom du fichier à créer : ");
scanf("%s", NOM_FICHIER);
/* Ouverture du fichier en écriture */
P_FICHIER = fopen(NOM_FICHIER, "w");
printf("Nombre d'enregistrements à créer : ");
scanf("%d", &NB_ENREG);
C = 0;
while (C<NB_ENREG)
{
printf("Entrez vos paramètres : ");
scanf("%s", DONNEES);
/* Insertion des données utilisateur (utilisation quasi-identique au printf classique */
fprintf(P_FICHIER, "%s\n", DONNEES);
C++;
}
/* Fermeture du fichier !!! A ne surtout pas oublier !!!*/
fclose(P_FICHIER);
/* Deuxième partie :
Lire et afficher à l'écran le contenu du fichier */
/* Ouverture du fichier en lecture */
P_FICHIER = fopen(NOM_FICHIER, "r");
C = 0;
/* Fin du fichier atteint ? */
while (!feof(P_FICHIER))
{
/* Lecture des données dans le fichier */
fscanf(P_FICHIER, "%s\n", NOM_PERS);
/* Affichage à l'écran */
printf("NOM : %s\n", NOM_PERS);
C++;
}
/* Fermeture du fichier !!! A ne surtout pas oublier !!!*/
fclose(P_FICHIER);
return 0;
}
Dans l'exemple qui suit je t'ai mis comment ouvrir et fermer un fichier (sans entrer dans les détails de la structure FILE* qui est nécessaire aux fichiers) et comment simplement lire et écrire dedans à raison d'une ligne à la fois (c'est ce qu'il y a de plus simple à mon avis).
Après il te reste plus qu'à formater les données que tu récupères comme bon te semble, inserer dans un tableau, comparaison de chaine, etc.
Mais je ne vais pas te faire tout le boulot non plus !!! :)
Voila tu me diras si ça te conviens, si tu veux plus d'explication n'hésites pas mais je pense avoir été assez clair et assez complet.
Ciao bon courage.
Ben.
main()
{
FILE *P_FICHIER; /* pointeur sur FILE */
char NOM_FICHIER[30], DONNEES[30];
int C,NB_ENREG;
/* Première partie :
Créer et remplir le fichier */
printf("Entrez le nom du fichier à créer : ");
scanf("%s", NOM_FICHIER);
/* Ouverture du fichier en écriture */
P_FICHIER = fopen(NOM_FICHIER, "w");
printf("Nombre d'enregistrements à créer : ");
scanf("%d", &NB_ENREG);
C = 0;
while (C<NB_ENREG)
{
printf("Entrez vos paramètres : ");
scanf("%s", DONNEES);
/* Insertion des données utilisateur (utilisation quasi-identique au printf classique */
fprintf(P_FICHIER, "%s\n", DONNEES);
C++;
}
/* Fermeture du fichier !!! A ne surtout pas oublier !!!*/
fclose(P_FICHIER);
/* Deuxième partie :
Lire et afficher à l'écran le contenu du fichier */
/* Ouverture du fichier en lecture */
P_FICHIER = fopen(NOM_FICHIER, "r");
C = 0;
/* Fin du fichier atteint ? */
while (!feof(P_FICHIER))
{
/* Lecture des données dans le fichier */
fscanf(P_FICHIER, "%s\n", NOM_PERS);
/* Affichage à l'écran */
printf("NOM : %s\n", NOM_PERS);
C++;
}
/* Fermeture du fichier !!! A ne surtout pas oublier !!!*/
fclose(P_FICHIER);
return 0;
}
15 avril 2011 à 15:43