|
Sujet : nom de fichier en C \ C++ |
| Toxin |
Avec des primitives , .... c'est dans sous unix, sous windows je ne sais pas.
Il faut savoir que les deux premières entrées sont '.' et '..', tu peux les passer en faisant un . Ensuite tu fais un sur le nom du fichier qui doit se trouver dans une structure de type je crois.
Voilà je viens de trifouiller mon /usr/include et tu dois t'y prendre de la manière suivante :
- faire un opendir de la directory (tu récupères un DIR *)
- faire un seekdir de 2 (pour '.' et '..')
- faire une boucle quand que readdir() renvoie un pointeur ok et errno correct.
- readdir() prend un DIR * en argument et renvoie un dirent *
Code :
- struct dirent {
- ino_t d_ino; /* "inode number" of entry */
- off_t d_off; /* offset of disk directory entry */
- unsigned short d_reclen; /* length of this record */
- char d_name[1]; /* name of file */
- };
|
Et tu fais un strstr() sur d_name.
Hop, dans la poche. |