Bonjour.
J'ai plusieurs fichiers. Le fichier principal contient des noms des listes (des fichiers). Tous les autres fichiers sont nommés par exemple "liste_1.txt" ... "liste_n.txt". Chaque fichier contient plusieurs mots (un mot par ligne). Le but c'est d'afficher d'abord le nom de la 1ère liste et ts les mots qu'elle contient et ensuite la meme chose pour toutes les autres lstes.
Par exemle: supposons que le fichier principal primary_f.txt contient 2 noms de fichiers: "Obama"et "Sarkozy". Le fichier "Obama.txt" contient "Clinton, Levinsky" et "Washington" (un seul mot par ligne). Et "Sarkozy.txt" contient "Bruni" et "HADOPI".... A la fin je veux qu'il m'affiche:
Obama
Clinton
Levinsky
Washington
Sarkozy
Bruni
HADOPI
Voici mon code:
#include <stdio.h>
#include <stdlib.h>
#define MAX_LEN 300
int afficher()
{
FILE* fichier = NULL;
char chaine[MAX_LEN];
char chaine1[MAX_LEN];
fichier = fopen("primary_f.txt", "r");
while (fscanf(fichier," %[^\n]s",chaine)!= EOF)
{
printf("%s\n",chaine);
fclose(fichier);
sprintf(chaine1,"%s.txt",chaine);
fichier=fopen(chaine1,"r");
while (fscanf(fichier," %[^\n]s",chaine1)!=EOF)
{
printf(" %s\n\n\n",chaine1);
};
fclose(fichier);
fichier = fopen("primary_f.txt", "r");
};
fclose(fichier);
return(0);
}
Et il marche pas (facile à tester).Quelqu'un peut me le modifier s'il vous plaît?
Merci et bonne journée