1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
| #include <stdio.h> // créer un fichier texte avec une extension .txt
#include <stdlib.h> // ok linux et windows
#include <time.h> // 2019.11.17
#include <string.h> //
FILE *ouvrir_fichier_texte(char fichier_a_ouvrir[]);
int main()
{
int relancer = 1;
while(relancer == 1) // boucle permettant de relancer le programme
{
char fichier_a_ouvrir[30];
printf("\n Liste des fichiers .txt du répertoire courant : \n");
system ("dir *.txt"); // affiche les fichiers .txt se trouvant dans le dossier courant
printf("\n Entre le nom du fichier que tu souhaites ouvrir : ");
scanf("%s", fichier_a_ouvrir);
ouvrir_fichier_texte(fichier_a_ouvrir);
} // while relancer
}
FILE *ouvrir_fichier_texte(char fichier_a_ouvrir[])
{
FILE *ptr_ouverture_fichier = NULL;
int texte = 0;
ptr_ouverture_fichier = fopen (fichier_a_ouvrir, "r");
if (ptr_ouverture_fichier == NULL)
{
printf("\n Erreur lors de l'ouverture du fichier %s ligne %d \n", __FILE__, __LINE__);
// si erreur, le code renverra le nom du fichier ainsi que de la ligne, puis relancera la boucle
return 0;
}
printf("\n Le contenu du fichier %s est : \n", fichier_a_ouvrir);
while ((texte=fgetc(ptr_ouverture_fichier)) != EOF) {
printf ("%c", texte);
}
fclose(ptr_ouverture_fichier);
return ptr_ouverture_fichier; // ainsi écrites, est-ce que ces 2 dernières lignes sont correctes ?
} |