LISTER LES FICHIERS CONTENUES DANS UN DOSSIER ET SES SOUS-DOSSIERS

econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 23 décembre 2008 - 21 oct. 2004 à 17:39
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 - 29 mars 2007 à 10:45
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/27003-lister-les-fichiers-contenues-dans-un-dossier-et-ses-sous-dossiers

Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
29 mars 2007 à 10:45
ça va bien, et toi ?

soyons sérieux ! Ce n'est pas un chat ici, et encore moins le Forum.
si tu veux poser une question, c'est là bas que ca se passe !!!
http://www.vbfrance.com/infomsg.aspx?ajout=1
cs_malako Messages postés 3 Date d'inscription mardi 13 mars 2007 Statut Membre Dernière intervention 14 mars 2007
29 mars 2007 à 10:40
cmt va=, dite moi y a qq 1 qui sait comment on ouvre le fichier pour le lire?
mrtrampo Messages postés 7 Date d'inscription jeudi 2 janvier 2003 Statut Membre Dernière intervention 2 novembre 2004
2 nov. 2004 à 18:30
ok merci
je n'arrivais pas à trouver dans les api une fonction qui faisait ça pour les dossiers

il y a findfirstfile pour les fichiers je crois
on trouve les suivants avec findnext ou un truc comme ça...

en tout cas encore merci
alex
At0mIc Messages postés 7 Date d'inscription lundi 26 avril 2004 Statut Membre Dernière intervention 24 novembre 2006
2 nov. 2004 à 17:37
Non, mais pense à ajouter un:
Dir(dossier,type)
Le type de fichier peut être:
- 0 Normal
- 1 Lecture seule
- 2 Fichier caché
- 4 Fichier système
- 8 Nom de volume ; si cette valeur est indiquée, le répertoire est ignoré
- 16 Répertoire
- 32 Archive

Cela te retourne le premier trouver. Utilise ensuite "Dir" pour avoir les suivants.
mrtrampo Messages postés 7 Date d'inscription jeudi 2 janvier 2003 Statut Membre Dernière intervention 2 novembre 2004
2 nov. 2004 à 15:54
il y a quelques temps déjà j'ai fait un programme de recherche comme windows en utilisant la même technique (il n'affiche pas les icônes mais est quand même 4x plus rapide)
J'ai un problème: mon prog ne voit pas les dossiers cachés et leurs sous dossiers (dans les DirListBox il n'y a pas de filtres comme pour FileListBox)

Ton prog voit-il les dossiers et sous-dossiers cachés?
TheLordFreddy Messages postés 157 Date d'inscription mardi 9 décembre 2003 Statut Membre Dernière intervention 3 février 2005 2
22 oct. 2004 à 13:06
Un air de déja vu, bien commenté tout de même
cs_SpOrTiF Messages postés 62 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 2 septembre 2008
21 oct. 2004 à 22:05
hey atomic:p

C'est un bon code ;o)

PaT
cs_clafouti Messages postés 78 Date d'inscription samedi 16 mars 2002 Statut Membre Dernière intervention 7 septembre 2006
21 oct. 2004 à 20:53
La fonction ne liste pas les fichiers du répertoire racine.
Voici une correction :

Private Function lireDossier(dossier As String)
Dim dossierPrecedent As String
Dim i As Integer
Dim j As Integer

dossierPrecedent = CStr(Dir1.Path) ' Sauvegarde le dossier précédent
Dir1.Path = dossier ' Se place dans le dossier à lire
For i = 0 To (Dir1.ListCount - 1) ' Pour chaque dossier présent
File1.Path = Dir1.List(i) ' Place le path dans le FileList
For j = 0 To (File1.ListCount - 1) ' Pour chaque fichier du FileList
Debug.Print File1.Path & "" & File1.List(j) ' L'affiche dans debug
Next j
lireDossier CStr(Dir1.List(i)) ' Affiche le contenue du dossier sélectionné
Next i
If Dir1.Path = dossierPrecedent Then
'lit les fichiers du répertoire racine
File1.Path = Dir1.List(i) ' Place le path dans le FileList
For j = 0 To (File1.ListCount - 1) ' Pour chaque fichier du FileList
Debug.Print File1.Path & "" & File1.List(j) ' L'affiche dans debug
Next j
End If
Dir1.Path = dossierPrecedent ' Se replace au dossier précédent
End Function
econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 23 décembre 2008 24
21 oct. 2004 à 17:39
Un bel exemple de récursivité. Propre et commenté.

Je ne l'ai pas essayé, mais à vue de nez, çà me semble pas mal.

C'est loin d'être l'algo le plus rapide pour rechercher des fichiers, mais en utilisant des contrôles DirListBox et FileListBox, çà doit être ce qui se fait de mieux.