Lecture d'un fichier ligne par ligne

oudkaramla Messages postés 107 Date d'inscription mardi 2 mars 2004 Statut Membre Dernière intervention 5 juillet 2004 - 2 juil. 2004 à 11:02
oudkaramla Messages postés 107 Date d'inscription mardi 2 mars 2004 Statut Membre Dernière intervention 5 juillet 2004 - 2 juil. 2004 à 14:16
salut à tous,
j'ai un problème: j'ai un fichier texte contenant quatre lignes.
moi je veux lire ces quatre lignes et les stocker chacun dans une variable pour un traitement ultèrieur.
je ne sais quoi faire: si je sais que je dois passer par fgets(), mais quand je l'utilise je ne peux lire que la première ligne, pas plus, je sais aussi qu'il ft utiliser une boucle wile(!eof(*file)) mais je ne sais pas comment faire

merci

9 réponses

cs_AlexMAN Messages postés 1536 Date d'inscription samedi 21 décembre 2002 Statut Membre Dernière intervention 24 mai 2009 1
2 juil. 2004 à 11:13
char sBuffer[256];

while (!feof(file)) {
fgets(sBuffer, 256, file);
printf("%s", sBuffer);
}

voila !

++

Alhexman
0
oudkaramla Messages postés 107 Date d'inscription mardi 2 mars 2004 Statut Membre Dernière intervention 5 juillet 2004
2 juil. 2004 à 11:27
merci,
mais comment faire pour stocker chaque ligne dans une variable
ligne1 dans char val1
ligne2 dans char val2
....
et ainsi de suite

merci
0
9sber Messages postés 28 Date d'inscription vendredi 30 avril 2004 Statut Membre Dernière intervention 14 septembre 2004
2 juil. 2004 à 11:51
là, tu n'as qu'à utiliser un tableau de chaine de caratères ou string avec un compteur "int X" que tu incrémente à chaque lecture après avoir recopier ton buffer dans ton TAB[X].

9Sber
0
oudkaramla Messages postés 107 Date d'inscription mardi 2 mars 2004 Statut Membre Dernière intervention 5 juillet 2004
2 juil. 2004 à 11:58
oui mais je ne suis pas trés calé en c
veux tu me faire un exemple stp?
MERCI
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
oudkaramla Messages postés 107 Date d'inscription mardi 2 mars 2004 Statut Membre Dernière intervention 5 juillet 2004
2 juil. 2004 à 12:00
J'ai essayé ça

for (i=1; i<4;i++)
{
while(!feof(fichier))
{
fgets(codeov,3,fichier);
strcpy(val"itoa(i)",codeov);
printf("%s", codeov);
}
fclose(fichier);
}


mais il ya un problème dans le strcpy!!!
voilà enfin écris moi un truc qui marche merci
0
cs_AlexMAN Messages postés 1536 Date d'inscription samedi 21 décembre 2002 Statut Membre Dernière intervention 24 mai 2009 1
2 juil. 2004 à 12:48
strcpy(val"itoa(i)",codeov); c koi ca ???

char tab[4][256];

for (i = 0; !feof(file); ++i) {
fgets(tab[i], 256, file);
}

voila ++

Alhexman
0
oudkaramla Messages postés 107 Date d'inscription mardi 2 mars 2004 Statut Membre Dernière intervention 5 juillet 2004
2 juil. 2004 à 13:18
tu m'as répondus une demi réponse,

comment stocker les quatres lignes DE LA TABLE dans les quatres variables de types caractères?

MERCI
0
cs_AlexMAN Messages postés 1536 Date d'inscription samedi 21 décembre 2002 Statut Membre Dernière intervention 24 mai 2009 1
2 juil. 2004 à 13:27
les lignes seront stocké ds un tab a 2dimensions ; tab[0], tab[1], tab[2], tab[3]. Donc tes lignes sont bien stocké ds des variables !!
0
oudkaramla Messages postés 107 Date d'inscription mardi 2 mars 2004 Statut Membre Dernière intervention 5 juillet 2004
2 juil. 2004 à 14:16
excuse merci merci
a+
0