遍历文件夹

Looping through folders

如何在 if 语句中遍历文件夹。我想告诉机器人搜索文件路径 + row.item(0) + 一个或两个 space + row.item(1).tostring?有些文件夹有双 space,有些有单 space。非常感谢帮助。

此致

你为什么不做这样的事情:

filepath + row.item(0).Trim() + " " + row.item(1).tostring.Trim()

重命名 filepath/* 下的所有子文件夹,并在应用上述解决方案之前用单个 space 更正它们的名称。

另一种方法是,使用try-catch机制。如果您仅确定这两个条件 - try 与单个 space - 如果抛出错误,请尝试在 catch 块中使用双 space。

要递归获取文件夹,您可以使用以下方法

GetDirectories(String, String, SearchOption)

如果您使用以下参数,您应该能够找到您的文件夹,上面的方法将 return 个文件夹包含一个 space 下面的方法将 return 个文件夹包含两个 spaces.

Directory.GetDirectories( "C:\", filepath + row.item(0) + " " + row.item(1).tostring, SearchOption.AllDirectories)

Directory.GetDirectories( "C:\", filepath + row.item(0) + " " + row.item(1).tostring, SearchOption.AllDirectories)

要将其组合成可在分配中使用的单行代码,您可以使用以下代码。

Directory.GetDirectories("C:\",filepath + row.item(0) + " " + row.item(1).tostring,SearchOption.AllDirectories).AddRange(Directory.GetDirectories("C:\",filepath + row.item(0) + " " + row.item(1).tostring,SearchOption.AllDirectories))

这将提取包含一个 space 的目录列表,然后将第二个目录列表添加到包含双 space 的目录列表中。这将为您提供一个包含文件夹的列表匹配任一搜索字符串