如何从目录中获取某些目录名称? 我目前有:
Dim dir1 As DirectoryInfo() = dir2.GetDirectories()
我尝试过以下示例的变体:
Dim dir1 As DirectoryInfo() = dir2.GetDirectories().Where(Name = Name.Contains("00000000.001"))
尝试从我将要在其余文件上运行的进程中排除两个文件名。任何建议都会很棒。谢谢!
编辑: Tim使用此代码提供的测试答案:
Dim direct1 As DirectoryInfo
For Each direct1 In dir1
ListBox2.Items.Add(direct1.Name)
Next
它显示了我目前要避免的两个文件名。
答案 0 :(得分:1)
你可以使用LINQ,因此我更喜欢DirectoryInfo.EnumerateDirectories
。
来自MSDN:
<select> <option value="11">apples</option> <option value="12">bananas</option> <option value="13">oranges</option> </select>
和EnumerateDirectories
方法不同 如下:当您使用GetDirectories
时,您可以开始 在整体之前枚举EnumerateDirectories
个对象的集合 集合被退回。使用DirectoryInfo
时,您必须等待 对于之前要返回的整个GetDirectories
对象数组 你可以访问该阵列。
例如:
DirectoryInfo
如果您想要排除他们,请使用Dim dirs As DirectoryInfo() = dir2.EnumerateDirectories().
Where(Function(dir) dir.Name.Contains("00000000.001")).
ToArray()
:
Not ...
如果您想要多次使用:
Dim dirs As DirectoryInfo() = dir2.EnumerateDirectories().
Where(Function(dir) Not dir.Name.Contains("00000000.001")).
ToArray()