Lister les répertoires et sous-répertoires

Présentation
Ce programme permet de lister les répertoires et les sous-répertoires ainsi que les fichiers qui y sont stockés.
Téléchargement
Compatibilité
Linux Mac Windows
0  0 
Téléchargé 57 fois Voir les 8 commentaires
Détails
Avatar de Benjamin Roux
Expert éminent sénior
Voir tous les téléchargements de l'auteur
Licence : Non renseignée
Date de mise en ligne : 30 novembre 2010




Avatar de _-Slash-_ _-Slash-_ - Membre confirmé https://www.developpez.com
le 08/04/2016 à 21:38
Citation Envoyé par ctac_ Voir le message
Bonjour,
Je cherchais a lister fichiers et répertoires.
J"ai trouvé ce code mais, dommage, ça ne fonctionne ni sur windows, ni sur linux car, entre autre, le path-separator n'est pas géré.
Pourquoi ne pas définir une macro dans ce style ?
Code : Sélectionner tout
1
2
3
4
5
#ifdef _WIN32
SEPARATOR "\\"
#else
SEPARATOR "/"
Avatar de Skyounet Skyounet - Expert éminent sénior https://www.developpez.com
le 30/11/2010 à 17:07
Bonjour, Je vous propose un nouvel élément à utiliser : Lister les répertoires et sous-répertoires

Ce programme permet de lister les répertoires et les sous-répertoires ainsi que les fichiers qui y sont stockés.

Qu'en pensez-vous ?
Avatar de Psycho185 Psycho185 - Membre du Club https://www.developpez.com
le 02/02/2011 à 12:53
Sa marche nickel merci pour ce code j'en avais besoin pour un projet.
Avatar de pfeuh pfeuh - Membre expérimenté https://www.developpez.com
le 02/02/2011 à 13:29
Salut,

Chez moi, ça ne compile pas. Windows XP32 et Code::Blocks.

Code : Sélectionner tout
1
2
3
4
5
6
C:\faller\languages\C\codeblocks\dummy\main.c||In function `lister':|
C:\faller\languages\C\codeblocks\dummy\main.c|28|error: structure has no member named `d_type'|
C:\faller\languages\C\codeblocks\dummy\main.c|28|error: `DT_DIR' undeclared (first use in this function)|
C:\faller\languages\C\codeblocks\dummy\main.c|28|error: (Each undeclared identifier is reported only once|
C:\faller\languages\C\codeblocks\dummy\main.c|28|error: for each function it appears in.)|
||=== Build finished: 4 errors, 0 warnings ===|
Avatar de bazzanella bazzanella - Futur Membre du Club https://www.developpez.com
le 03/11/2011 à 22:14
Bonsoir,
merci pour le partage de ce programme pour la communauté.

Tu devrais spécifier, à mon avis, que si l'on compile sous environnement Linux, il faut comme le stipule le header dirent.h, de mettre le 2ième define (__USE_BSD) avant les inclusions :

#define _GNU_SOURCE
#define __USE_BSD
#include <stdio.h>
.......

Ce 2ième define est nécessaire à la compilation du programme sous GNU/Linux. Sans lui, la variable DT_DIR (qui vaut 4 si je me souviens), n'est pas déclarée.

Tu peux également stipuler en début du programme ceci :

/* ISO C90 */

Ce code étant conforme au C90.

Cordialement,
Avatar de Melem Melem - Expert éminent https://www.developpez.com
le 04/11/2011 à 1:31
La syntaxe est conforme au C90 mais les fonctions utilisées non. POSIX.1 n'exige pas non plus l'existence du champ d_type dans la structure dirent, ce champ n'existe que dans le systèmes BSD et certaines implémentations plus ou moins compatibles (le seul champ exigé par POSIX est le champ d_name). Du coup, on a plutôt affaire ici à une source BSD. Si on veut se conformer au standard POSIX, on utilisera stat à la place du champ d_type.
Avatar de yvesberger yvesberger - Candidat au Club https://www.developpez.com
le 07/04/2016 à 22:07
Bonjour ctac,

Personnellement, je trouve ton code très bien. Je t'en remercie ! Sans cet exemple je restais bloqué à ne pas savoir faire.
Moi qui suis en suis toujours resté à un niveau très moyen en C, je le comprends bien et donc suis capable de l'adapter à mes besoins. Et au moins lui compile parfaitement avec codeblocks/MingW sous windows10 !

En effet, comme toi, je n'arrivais pas à compiler les autres bouts de code de la page.

Je trouve cela bien dommage, voir décevant, même si cela doit s'expliquer logiquement, mais cela n'arrive pas que sur ce site que par ailleurs j'apprécie beaucoup : les exemples fournis avec boost (sauf erreur, tut4.cpp) sur l'utilisation de l'include filesystem ne compilent pas non plus sur ma config restée totalement "d'origine'.
Avatar de lregiany lregiany - Nouveau Candidat au Club https://www.developpez.com
le 03/08/2016 à 11:41
Ce programme permet de lister les répertoires et les sous-répertoires ainsi que les fichiers qui y sont stockés.

Qu'en pensez-vous ?[/QUOTE]

Question:
Bonjour,
comment lancer ce programme?
Je cherche à récupérer le résultat dans un fichier Excel avec les propriétés des fichiers type date de création de modification + son chemin.
Merci bien
Developpez.com décline toute responsabilité quant à l'utilisation des différents éléments téléchargés.