Listing de fichiers et répertoires (fonction récursive)

Soyez le premier à donner votre avis sur cette source.

Snippet vu 21 311 fois - Téléchargée 26 fois

Contenu du snippet

Ce code est inspiré d'un script déja déposé sur le site qui listait de manière récursive les sous-répertoires d'un répertoire. j'ai modifié le script de manière à ce qu'il liste également les fichiers.

Le listing complet est loggué dans un fichier texte.
Ce script peut être utile par exemple si vous souhaitez lister l'ensemble des fichiers de votre ordinateur (par contre, le temps d'exécution sera bien évidement très long...)

Il suffit pour utiliser le script de le lancer à l'endroit où l'on souhaite obtenir le listing des fichiers, sous-fichiers, répertoires et sous-répertoires...

Si l'auteur du script original se reconnait, qu'il me contacte pour que je le remercie et que je le cite. J'espère ne pas l'avoir offensé en ayant repris et adapté son code.

Si ce code est considéré comme étant redondant sur le site, que les admins n'hésitent pas à supprimer mon script.

Cordialement.

Source / Exemple :


'# Liste dans un fichier texte l'ensemble des repertoires, sous repertoires
'# et fichiers contenu dans un dossier.

'# Fonction recursive
Sub listingSousDossiersRecur(objListRep, cheminBranche)

    oFichierTXT.WriteLine("## Entrée dans le répertoire " & cheminBranche)

    '# Listing des fichiers
    Set pFichier  = oFSO.GetFolder(cheminBranche)
    Set cFichiers = pFichier.Files
        
    For Each fichier in cFichiers
        oFichierTXT.WriteLine(cheminBranche & "\" & fichier.Name)
    Next

    '# Listing des sous-dossiers + appel recursif
    For Each oSousRep In objListRep        
        Set objListSousRep = oSousRep.SubFolders
        Call listingSousDossiersRecur(objListSousRep, _
                                      cheminBranche & "\" & oSousRep.Name)
    Next
     
End Sub

Set oFSO = CreateObject("Scripting.FileSystemObject")

'# Pointeur sur le repertoire courant
Set oRepCourant = oFSO.GetFolder(".")

'# Creation du fichier texte
Set oFSO        = CreateObject("Scripting.FileSystemObject")   
Set oFichierTXT = oFSO.CreateTextFile ("Listing_" & oRepCourant.Name & ".txt", _
                                        True)

'# Ecriture du repertoire courant dans le fichier
oFichierTXT.WriteLine("RÉPERTOIRE SCRUTÉ : " & oRepCourant.Path)
oFichierTXT.WriteLine("")

'# Obtention d'une collection contenant l'ensemble des repertoire du dossier
Set oSousRep = oRepCourant.SubFolders

'# Appel d'une fonction recursive qui va lister l'ensemble des dossiers
'# contenu dans chaque sous-dossier
'Call listingSousDossiersRecur(oSousRep, oRepCourant.Name)
Call listingSousDossiersRecur(oSousRep, oRepCourant.Path)

A voir également

Ajouter un commentaire

Commentaire

peanut38
Messages postés
30
Date d'inscription
samedi 18 mars 2006
Statut
Membre
Dernière intervention
28 octobre 2008
-
Bonjour,

Je cherche une source pour lister le contenu d'un répertoire et sous-répertoire et cette source serait parfaite pour moi. Seulement... je ne connais pas le langage asp ni comment je peux l'intégrer dans une page html.

Pourquoi choisir du asp ? et bien parce que je veux exécuter ce script côté client, donc pas de php. Pas de java car .. et bien, je n'arrive pas non plus à utiliser les sources proposées sur ce site. (je suis une brêle)

Comment dois-je faire fonctionner ce code ? quels liens puis-je consulter pour info ?

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.