Ouvrir plusieurs fichiers
Résolu
Med
-
med -
med -
Bonjour,
J'ai un devoir à faire de programmation c et je bloque sur un passage. En fait je dois ouvrir plusieurs fichiers intitulés g01.txt, g02.txt, g03.txt.... Je pense utiliser la commande sprintf dans une boucle mais je n'y arrive pas.
Merci d'avance,
Sarah
J'ai un devoir à faire de programmation c et je bloque sur un passage. En fait je dois ouvrir plusieurs fichiers intitulés g01.txt, g02.txt, g03.txt.... Je pense utiliser la commande sprintf dans une boucle mais je n'y arrive pas.
Merci d'avance,
Sarah
A voir également:
- Ouvrir plusieurs fichiers
- Comment ouvrir un fichier epub ? - Guide
- Comment ouvrir un fichier bin ? - Guide
- Ouvrir fichier .dat - Guide
- Comment ouvrir un fichier 7z - Guide
- Comment ouvrir un fichier docx ? - Guide
3 réponses
Bonjour
Il te faut un tableau de caractère : nomFichier.
Ensuite : sprintf(nomFichier,"g%2d.txt",i); à mettre dans une boucle for.
Cela te permettra d'avoir nomFichier qui vaut : g01.txt, g02.txt, etc.
Il ne te reste plus qu'à faire fopen() pour ouvrir tous les fichiers.
Il faudra également faire le même procéder pour fermer les fichiers avec fclose().
Une autre possibilité est de passer par un tableau.
Cdlt,
Il te faut un tableau de caractère : nomFichier.
Ensuite : sprintf(nomFichier,"g%2d.txt",i); à mettre dans une boucle for.
Cela te permettra d'avoir nomFichier qui vaut : g01.txt, g02.txt, etc.
Il ne te reste plus qu'à faire fopen() pour ouvrir tous les fichiers.
Il faudra également faire le même procéder pour fermer les fichiers avec fclose().
Une autre possibilité est de passer par un tableau.
Cdlt,
Ensuite j'ai un warning à la ligne du scanf et je ne comprends pas non plus. cela doit être à cause du fp mais je ne vois pas..
for(t=0;t<=505;t++){
scanf(fp,"%c",&texte[t]);
printf("%c",texte);
}
for(t=0;t<=505;t++){
scanf(fp,"%c",&texte[t]);
printf("%c",texte);
}
Attention, quand tu fais fp=fopen(...); tu perds les fichiers ouverts précédemment. Il faudrait plutôt faire un tableau : fp[0]=fopen(...), fp[1]=fopen(...); etc.
scanf(fp,"%c",&texte[t]);
Il faut regarder les man pour bien connaître les prototypes...
Ce n'est pas scanf si tu utilises un fichier, mais fscanf().
scanf(fp,"%c",&texte[t]);
Il faut regarder les man pour bien connaître les prototypes...
Ce n'est pas scanf si tu utilises un fichier, mais fscanf().