Bonjour,

J'ai un code permettant de lister tout les fichiers et dossiers d'un répertoire.

Le voici :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
 
#include <stdlib.h>/* pour exit()*/
#include <stdio.h>/* pour puts() */
#include <dirent.h>/* Pour l'utilisation des dossiers */
#include <errno.h>
#ifndef WIN32
#include <sys/types.h>
 
#endif
 
int main()
{
    DIR* rep = NULL;
    struct dirent* fichierLu = NULL; /* Déclaration d'un pointeur vers la structure dirent. */
    rep = opendir("C:\\Windows");
    if (rep == NULL)
        perror(""); /*perror donne le détail de l'erreur suite a ouverture du repertoire */
 
    fichierLu = readdir(rep); /* On lit le premier répertoire du dossier. */
    while ((fichierLu = readdir(rep)) != NULL)
        printf("%s\n", fichierLu->d_name);
 
    if (closedir(rep) == -1)
        exit(-1);
 
    return 0;
}
Seulement, je voudrais pouvoir 'filtrer' les résultats.

C'est à dire, n'avoir dans la listes, que des fichiers ou dossiers commencent ou contenant les mots "driver" par exemple.

Pouvez-vous m'aider la dessus ?

Merci d'avance !