salut,
si tu veux lister les sous répertoires, tu es obligé de demander toutes les entrées, et sélectionner celles dont l'extension te convient.
Tu peux utiliser cette fonction (en l'adaptant) :
void listeRepertoire(char *repertoire) { struct _finddata_t fileInfo; char repert[2048]; char rech[2048];
long idRecherche; long result;
sprintf(rech,"%s\\*.*",repertoire);
idRecherche = _findfirst(rech,&fileInfo); if (idRecherche==-1) result = -1; else result = 0; while (result==0) { //saut des répertoires "." et ".." if (strcmp(fileInfo.name,".")!=0 && strcmp(fileInfo.name,"..")!=0) { //test pour savoir si l'entrée est un répertoire if ((fileInfo.attrib & _A_SUBDIR)!=0) { //traitement en cas de sous-répertoire sprintf(repert,"%s\\%s",repertoire,fileInfo.name); listeRepertoire(repert); } else { //traitemement en cas de fichier } } //lecture entrée suivante result = _findnext(idRecherche,&fileInfo); } _findclose(idRecherche); }
a+ alain
|