Ce code doit chercher dans le répertoire courant un fichier "C
marwa
-
marwa -
marwa -
Bonjour cher amis
voici un code je veux savoir s'il est correcte ou pas sinon SVP aidez moi pour ce code
ce code doit chercher dans le répertoire courant un fichier "C" en retournant son nom.
#include <stdio.h>
#include <sys/types.h>
#include <dirent.h>
#include <sys/stat.h>
#include <time.h>
int main (void)
{
DIR *rep = opendir (".c" );
if (rep != NULL)
{
struct dirent *lecture;
while ((lecture = readdir (rep)))
{
struct stat st;
stat (lecture->d_name, &st);
{
/* Modified time */
time_t t = st.st_mtime;
struct tm tm = *localtime (&t);
char s[32];
strftime (s, sizeof s, "%d/%m/%Y %H:%M:%S", &tm);
printf ("%-14s %s\n", lecture->d_name, s);
}
}
closedir (rep), rep = NULL;
}
return 0;
}
merci beaucoup mes ami(e)s
voici un code je veux savoir s'il est correcte ou pas sinon SVP aidez moi pour ce code
ce code doit chercher dans le répertoire courant un fichier "C" en retournant son nom.
#include <stdio.h>
#include <sys/types.h>
#include <dirent.h>
#include <sys/stat.h>
#include <time.h>
int main (void)
{
DIR *rep = opendir (".c" );
if (rep != NULL)
{
struct dirent *lecture;
while ((lecture = readdir (rep)))
{
struct stat st;
stat (lecture->d_name, &st);
{
/* Modified time */
time_t t = st.st_mtime;
struct tm tm = *localtime (&t);
char s[32];
strftime (s, sizeof s, "%d/%m/%Y %H:%M:%S", &tm);
printf ("%-14s %s\n", lecture->d_name, s);
}
}
closedir (rep), rep = NULL;
}
return 0;
}
merci beaucoup mes ami(e)s
A voir également:
- Ce code doit chercher dans le répertoire courant un fichier "C
- Fichier bin - Guide
- Code ascii - Guide
- Comment réduire la taille d'un fichier - Guide
- Comment ouvrir un fichier epub ? - Guide
- Comment déverrouiller un téléphone quand on a oublié le code - Guide
1 réponse
Salut marwa,
Tu dois passer un répertoire à opendir :
https://pubs.opengroup.org/onlinepubs/7908799/xsh/opendir.html
Pour le répertoire courant, tu dois passer un point. Vois l'exemple ici :
https://pubs.opengroup.org/onlinepubs/7908799/xsh/readdir.html
Ensuite, dans ta boucle, tu peux vérifier les extensions dans les noms de fichiers retournés par le membre de la structure lecture->d_name, par exemple en utilisant strrchr pour localiser le dernier point contenu dans le nom de fichier et en incrémentant le pointeur de un, et en comparant le résultat à une chaîne "C" et/ou "c".
Cela veut dire que tu dois aussi décider si ton programme est sensible à la casse, et si une extension "toto.c" sera trouvée de même que "toto.C".
Le stat que tu fais ne servira qu'à afficher, outre le nom, la date et l'heure de chaque fichier trouvé correspondant à l'extension recherchée (si c'est bien ce que tu dois faire). Si tu dois seulement afficher le nom, il n'est pas utile de l'utiliser... n'est-ce pas ?
Dal
Tu dois passer un répertoire à opendir :
https://pubs.opengroup.org/onlinepubs/7908799/xsh/opendir.html
Pour le répertoire courant, tu dois passer un point. Vois l'exemple ici :
https://pubs.opengroup.org/onlinepubs/7908799/xsh/readdir.html
Ensuite, dans ta boucle, tu peux vérifier les extensions dans les noms de fichiers retournés par le membre de la structure lecture->d_name, par exemple en utilisant strrchr pour localiser le dernier point contenu dans le nom de fichier et en incrémentant le pointeur de un, et en comparant le résultat à une chaîne "C" et/ou "c".
Cela veut dire que tu dois aussi décider si ton programme est sensible à la casse, et si une extension "toto.c" sera trouvée de même que "toto.C".
Le stat que tu fais ne servira qu'à afficher, outre le nom, la date et l'heure de chaque fichier trouvé correspondant à l'extension recherchée (si c'est bien ce que tu dois faire). Si tu dois seulement afficher le nom, il n'est pas utile de l'utiliser... n'est-ce pas ?
Dal
marwa
merci