How to get the list of all directories and subdirectories in a specified path using vb.net

后端 未结 4 607
耶瑟儿~
耶瑟儿~ 2021-01-28 10:27

My directory structure is like below.

Parent directory
---Sub directory 1 ---Sub directory 2 ------Sub directory2a ------Sub directory2b ---Sub directory 3

相关标签:
4条回答
  • 2021-01-28 10:50

    You need to use the overloaded version of Directory.GetFileSystemEntries that specifies whether or not to search subdirectories:

    Dim allDirectories As String() = Directory.GetFileSystemEntries("path", "*", SearchOption.AllDirectories)
    

    Directory.GetFileSystemEntries Method (String, String, SearchOption)

    0 讨论(0)
  • 2021-01-28 10:57

    The Directoryinfo object can provide all sorts of information and about a directory, including directories / Files even system files

    Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
        Dim dir As New DirectoryInfo("C:\")
        For Each dirItem As DirectoryInfo In dir.GetDirectories
            MsgBox(dirItem.Name)
        Next
    End Sub
    
    0 讨论(0)
  • 2021-01-28 11:00

    just use something like this:

    Dim result = System.IO.Directory.EnumerateDirectories(path, "*", System.IO.SearchOption.AllDirectories)
    

    the trick is the SearchOption.AllDirectories

    BTW: you can do the same with your GetFileSystemEntries-Method

    0 讨论(0)
  • 2021-01-28 11:05
    Dim di As New DirectoryInfo(FolderName)
    di = New DirectoryInfo(path)
    
    rgFiles = di.GetFiles("*.*", IO.SearchOption.AllDirectories)
    
    For Each fi As FileInfo In rgFiles
        If CheckIfExist(fi.FullName.ToString.Replace("\" & fi.Name, "")) = False Then
            ListBox1.Items.Add(fi.FullName.ToString.Replace("\" & fi.Name, ""))
        End If
    Next
    
    Public Function CheckIfExist(ByRef Path As String) As Boolean
        Dim RetVal As Boolean = False
    
        For Each LI As String In ListBox1.Items
            If LI.ToString = Path Then
                RetVal = True
                Return RetVal
                Exit Function
            End If
        Next
        Return RetVal
    End Function
    
    0 讨论(0)
提交回复
热议问题