Liste des fichiers d'un répertoire au format html

Contenu du snippet

- Permet de faire la liste des tous les fichiers contenus dans un répertoire ou un lecteur.
- Le résultat de cette recherche est sauvegardé dans un fichier .html à la racine du répertoire de recherche.
- Le fichier de résultat contient le chemin complet de chaque fichier, et grâce à des liens hypertexte, un clic permet d'ouvrir le fichier désiré.

Source / Exemple :


Const dirToList As String = "C:\Temp\"

Private Sub frmListFilesDirToHtml_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Me.Hide()
        Call listFilesInitPath(dirToList)
        Call listAllDir(dirToList)
        Me.Close()
End Sub

'Liste des fichiers sous le rep racine
Private Sub listFilesInitPath(ByVal initPath As String)
        Dim initPathFiles As String
        Dim listStreamWriter As StreamWriter

        For Each initPathFiles In Directory.GetFiles(initPath, "*.*")
            'Ecriture du resultat dans le fichier "Liste.html"
            'Si ce fichier n'existe pas, il sera cree automatiquement
            listStreamWriter = File.AppendText(dirToList & "Liste des fichiers.html")

            'Ecriture chemin complet et nom fichier
            listStreamWriter.Write("<a href=" & "'file:" & initPathFiles & "'" & ">" & initPathFiles & "</a>" & "<br>")
            listStreamWriter.Flush()

            'Fermeture objet
            If Not listStreamWriter Is Nothing Then
                listStreamWriter.Close()
            End If
        Next
End Sub

'Liste des sous-rep & noms de fichiers sous le rep racine
Private Sub listAllDir(ByVal startDir As String)
        Dim dir As String
        Dim files As String
        Dim myStreamWriter As StreamWriter

        For Each dir In Directory.GetDirectories(startDir)
            For Each files In Directory.GetFiles(dir, "*.*")
	'Ecriture du resultat dans le fichier "Liste.html", à la suite (methode Append to text)
                myStreamWriter = File.AppendText(dirToList & "Liste des fichiers.html")

                'Ecriture chemin complet et nom fichier
                myStreamWriter.Write("<a href=" & "'file:" & files & "'" & ">" & files & "</a>" & "<br>")
                myStreamWriter.Flush()

                'Fermeture objet
                If Not myStreamWriter Is Nothing Then
                    myStreamWriter.Close()
                End If
            Next

            'Recherche sous-repertoires - Recursivite
            listAllDir(dir)
        Next
End Sub

Conclusion :


Remplacer la valeur de la constante dirToList par le répertoire ou le lecteur à lister. Attention, il faut mettre un "\" à la fin.
      • BUG ***

Ne gère pas les caractères accentués (si un 'é', un 'à', un 'ü', etc... apparaît dans le chemin ou le nom du fichier, le lien ne fonctionnera pas :o(...)

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.