Exploitation d'un fichie texte en c

Fermé
Tiger-woo - 10 juin 2009 à 18:20
mamiemando Messages postés 33446 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 20 décembre 2024 - 11 juin 2009 à 17:14
Bonjour,
Voila g deux fichiers:
le premier c liste_key qui contient une liste de fichiers ligne par ligne avec cette fonction je recupre la ieme ligne et donc le ieme fichier.
void whatfile(int i,char tab[])
{
int j=0;
FILE* liste;
liste = fopen("liste_key","r");

while(j!=i && j<47)
{
fgets(tab,50,liste);
j++;
}

fclose(liste);
}
je veux maintenant alle rchercher la ieme ligne de ce ieme fichier ke j'ai rentrer dans filename et qui srot de tab de la fonction precedente
void remplirmat(int i,char tab[],char filename[])
{
int j=0;
FILE* liste;
liste = fopen(filename,"r");
if (liste == NULL) perror ("Error opening file");
while(j!=i && j<47)
{
fgets(tab,1000,liste);
j++;
}

fclose(liste);

}

Avec ce que j'ai ecrit j'ai une ereur d'ouverture fichier. Qq a une solution?
A voir également:

3 réponses

mamiemando Messages postés 33446 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 20 décembre 2024 7 812
11 juin 2009 à 01:00
Bah déjà il faut fermer un fichier que s'il s'est ouvert avec succès et sinon envoyer une erreur (chose que tu as omise dans whatfile).

Si ton fopen échoue ça peut être parce que tu n'as pas des droits suffisants, plus de place, qu'un process à verrouillé le fichier etc... Avec le programme complet ce serait plus facile. Et pense à utiliser les balises de mises en forme du code (à droite du bouton souligner).

Ah et sinon même si ça n'a rien à voir, pourquoi utiliser des while au lieu des for qui seraient beaucoup plus concis, plus lisibles (et plus performants) ?

Bonne chance
0
En fait mon erreur se produit dans la deuxieme fonction, la premiere ouvre bien liste_key et me renvoi en chaine de caactere le fichier ke je veux. La ou j'ia un probleme c o niveau du seconde fopen car il ne veux pas ouvrir le fichier a partir de son nom en chaine de caractere. Merci pour le for jvais y songer.
0
mamiemando Messages postés 33446 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 20 décembre 2024 7 812
11 juin 2009 à 17:14
As-tu résolu ton problème ? Si ce n'est pas le cas, donne-nous ton code source parce que là, c'est difficile de t'aider.

Bonne chance
0