Si tu travailles avec Mingw, tu as la bibliothèque "dirent". Les déclarations sont dans <dirent.h>.
En gros, voici comment ça fonctionne :
1) On ouvre le répertoire :
DIR* rep = opendir("c:\documents and settings\moi\mes documents");
Pour le répertoire courant, c'est "." ; pour le parent, c'est ".." .
2) On lit fichier par fichier, a chaque fois un "dirent" est renvoyé sur le fichier suivant, c'est une sorte d'itérateur :
1 2
| while (dirent* fichier = readdir(rep))
cout << "Fichier suivant : " << fichier->d_name << "\n"; |
En fait, readdir renvoie un pointeur sur le fichier suivant, c'est une structure où le nom est un char* dans d_name, ou un pointeur nul si on est à la fin du répertoire. A ce moment là, le pointeur fichier est nul d'où l'interruption de la boucle while.
Pour plus d'informations :
- Lire les prototypes et les commentaires dans dirent.h
- Cette page : http://www.opengroup.org/onlinepubs/.../dirent.h.html
- Google
Bonne chance
Kwakanar
Partager