我有Combobox,我在其中选择文件夹名称。必须先搜索此文件夹。在这些文件夹中还有名为" Versions"的文件夹 - 这些文件夹还有我需要在Listview上添加的另一个文件夹。我尝试了这个,但没有添加到我的Listview中:
Dim Folder_To_Search As String() = IO.Directory.GetDirectories("D:\", MyCombo.Text, System.IO.SearchOption.AllDirectories)
For Each folder As String In Folder_To_Search
ListView1.Items.Add(Path.GetFileName(folder + "\Versions\"))
Next
我想我在+" \ Versions \"之后遗漏了一些东西,有人能给我一些线索吗?
答案 0 :(得分:1)
您的列表视图中没有添加任何内容,因为GetDirectories正如其名称所示返回目录。所以你得到你的目录列表,然后在每个目录上使用Path.GetFilename,但是目录末尾没有文件名,所以只有空字符串被添加到你的列表视图中。
编辑评论:然后听起来你需要基本上运行两个嵌套目录搜索;第一个用于文件夹,如“Microsoft”,第二个用于Microsoft文件夹中的“Versions”,然后循环访问并获取文件:
-Wall
如果我正确理解您的目标,上面的代码应该找到您正在寻找的所有文件。我制作了一些测试文件夹,并将Microsoft / Versions放在目录的不同级别,这段代码将它们全部选中