3 回答

TA贡献1909条经验 获得超7个赞
这实际上是一个很好解决的问题。递归意味着您创建了一个自引用函数(一个自我调用的函数)。在您的情况下,您可以使函数针对当前文件夹的每个子文件夹进行调用。
TraverseFolders objFso.GetFolder(strPath)
Function TraverseFolders(fldr)
' do stuff with the files in fldr here, or ...
For Each sf In fldr.SubFolders
TraverseFolders sf '<- recurse here
Next
' ... do stuff with the files in fldr here.
End Function

TA贡献1830条经验 获得超9个赞
在脚本的开头运行此命令,它将列出所有文件夹中的所有文件:
dir /S/B > AllFoldersAndFiles.txt
然后循环浏览文件列表。这对我有用。
递归vb有点棘手。

TA贡献1840条经验 获得超5个赞
这是一种可能的方法(与FileSystemObject
在某些情况下使用相比,提供了更好的性能),但由于不完整,无法在问题中使用。一方面,您不能只将命令直接放在VBScript中,而必须在其中添加一个cmd /c
,因为dir
和重定向是由提供的cmd.exe
。另外,OP正在寻找具有特定扩展名的文件,该文件未反映在您的陈述中。
添加回答
举报