Lister tous les fichiers d'un repertoire

Soyez le premier à donner votre avis sur cette source.

Snippet vu 89 743 fois - Téléchargée 7 fois

Contenu du snippet

    Private Function DirToList(ByVal sFolder As String, Optional ByVal sFilter As String = "*.*", Optional ByVal bRecurvise As Boolean = True) As List(Of String)
        'résultat sous forme de collection de chaîne
        Dim ListResult As New List(Of String)
        'récupère le tableau
        Dim asDir() As String = DirToArray(sFolder, sFilter, bRecurvise)
        'intègre dans la liste
        If Not (asDir Is Nothing) Then
            For Each s As String In asDir
                ListResult.Add(s)
            Next
        End If
        Return ListResult
    End Function
    Private Function DirToArray(ByVal sFolder As String, Optional ByVal sFilter As String = "*.*", Optional ByVal bRecurvise As Boolean = True) As String()
        'ajoute le dernier "\"
        If Not (sFolder(sFolder.Length - 1) = "\"c) Then sFolder &= "\"
        'le dossier doit existe
        If Not (System.IO.Directory.Exists(sFolder)) Then Return Nothing
        'récupère le tableau depuis class framework
        If bRecurvise Then
            Return System.IO.Directory.GetFiles(sFolder, sFilter, IO.SearchOption.AllDirectories)
        Else
            Return System.IO.Directory.GetFiles(sFolder, sFilter, IO.SearchOption.TopDirectoryOnly)
        End If
    End Function

    'EXEMPLE
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim PhpFiles As List(Of String) = DirToList("C:\Program Files\wamp\www", "*.php", True)
        Dim sPluriel As String = String.Empty
        If (PhpFiles.Count > 1) Then sPluriel = "s"
        Console.WriteLine(String.Format("{0} fichier{1} trouvé{1}", PhpFiles.Count, sPluriel))
        For Each s As String In PhpFiles
            Console.WriteLine(s)
        Next
    End Sub

Compatibilité : VB 2008

Disponible dans d'autres langages :

A voir également

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.