Lister les fichiers dans un dossier

Résolu
Signaler
Messages postés
706
Date d'inscription
mercredi 17 novembre 2004
Statut
Membre
Dernière intervention
29 septembre 2013
-
Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
-
voila j'aimerai savoir comment faire pour lister les fichiers present dans un dossier si cela est possible en C
.

7 réponses

Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
30
WIN32_FIND_DATA wfd;
HANDLE hfl = FindFirstFile("D:\\*.*", &wfd);
if(hfl == INVALID_HANDLE_VALUE) return;
do {
MessageBox(0, wfd.cFileName, "F", 0);
} while(FindNextFile(hfl, &wfd));
FindClose(hfl);

ciao...
http://dev.winsysdev.com
BruNews, MVP VC++
Messages postés
706
Date d'inscription
mercredi 17 novembre 2004
Statut
Membre
Dernière intervention
29 septembre 2013

bein disons j'ai fais ca en code pour tester



hfl = FindFirstFile("C:\\Program Files\\Activision\\Call of Duty 2\\main\\*.*", &wfd);

filer: strcpy(file,wfd.cFileName);

printf("%s\n",file);

FindNextFile(hfl, &wfd);

Sleep(1000);

goto filer;



en ayant déclaré la chaine file mais il m'affiche "." c tout :s c'est pour sa que je comprend pas tout a fait
Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
30
WIN32_FIND_DATA wfd;
HANDLE hfl = FindFirstFile("D:\\*.*", &wfd);
if(hfl == INVALID_HANDLE_VALUE) return;
do {
// MessageBox(0, wfd.cFileName, "F", 0);
if(wfd.cFileName[0] != '.') printf("%s\n", wfd.cFileName);
} while(FindNextFile(hfl, &wfd));
FindClose(hfl);

ciao...
http://dev.winsysdev.com
BruNews, MVP VC++
Messages postés
706
Date d'inscription
mercredi 17 novembre 2004
Statut
Membre
Dernière intervention
29 septembre 2013

k merci monsieur :)

.
Messages postés
706
Date d'inscription
mercredi 17 novembre 2004
Statut
Membre
Dernière intervention
29 septembre 2013

WIN32_FIND_DATA wfd;

HANDLE hfl



//puis ensuite pour le code

hfl = FindFirstFile("lechemin\\*.*", &wfd);

FindNextFile(hfl, &wfd)



mais comment les afficher par exemple :s meme en mode console car ton
code ne marche pas pour moi :s il va direct au return 0 en fin de prog,
j'cherche a mettre le nom d'un fichier dans une chaine de caractere en
fait
Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
30
wfd.cFileName EST DEJA UNE CHAINE, sinon strcpy pour la mettre dans une autre chaine.
Je te donne la partie demandée, la partie consolerie tu peux bien la rajouter, non ?
Changer MessageBox en printf est faisable aisément me semble.

ciao...
http://dev.winsysdev.com
BruNews, MVP VC++
Messages postés
706
Date d'inscription
mercredi 17 novembre 2004
Statut
Membre
Dernière intervention
29 septembre 2013

o pis non j'ai rien dis, désolé de ma betise!
.