【发布时间】:2014-09-08 12:05:04
【问题描述】:
好的,感谢@sircodesalotPublic Sub AppendFilesFromDirectory(ByVal path As DirectoryInfo, ByVal files As List(Of FileInfo))
For Each file As FileInfo In CurrentFolder.GetFiles()
files.Add(file)
Next
For Each subfolder As DirectoryInfo In CurrentFolder.GetDirectories()
AppendFilesFromDirectory(subfolder, files)
Next
End Sub
Dim files As New List(Of FileInfo)
AppendFilesFromDirectory(New DirectoryInfo(FolderBrowserDialog1.SelectedPath), files)
For Each file As FileInfo In files
ListBox1.Items.Add(file.FullName)
Next
它适用于其中包含子文件夹的文件夹,但如果一个文件夹只有文件,那么它会变成一个循环,不断地将文件添加到 myList。
有什么建议可以避免吗? @sircodesalot 好心地试图向我解释,但无论我尝试什么,我都无法做到..
非常感谢您的帮助!
【问题讨论】:
-
我认为你没有意识到这个列表会有多大。
-
这是一个 C:\ 的例子,当然我有一个变量和我的列表路径。
-
注意
My.Computer.FileSystem.GetDirectories如果没有子文件夹应该为空,所以递归应该停止。 -
如何在其中插入if并检查它?试了好几次都不行。。
-
这看起来非常接近正确。有什么不好的地方?
标签: vb.net file search listbox getfiles