3 回答

TA貢獻(xiàn)1909條經(jīng)驗(yàn) 獲得超7個贊
這實(shí)際上是一個很好解決的問題。遞歸意味著您創(chuàng)建了一個自引用函數(shù)(一個自我調(diào)用的函數(shù))。在您的情況下,您可以使函數(shù)針對當(dāng)前文件夾的每個子文件夾進(jìn)行調(diào)用。
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貢獻(xiàn)1830條經(jīng)驗(yàn) 獲得超9個贊
在腳本的開頭運(yùn)行此命令,它將列出所有文件夾中的所有文件:
dir /S/B > AllFoldersAndFiles.txt
然后循環(huán)瀏覽文件列表。這對我有用。
遞歸vb有點(diǎn)棘手。

TA貢獻(xiàn)1840條經(jīng)驗(yàn) 獲得超5個贊
這是一種可能的方法(與FileSystemObject
在某些情況下使用相比,提供了更好的性能),但由于不完整,無法在問題中使用。一方面,您不能只將命令直接放在VBScript中,而必須在其中添加一個cmd /c
,因?yàn)?code>dir和重定向是由提供的cmd.exe
。另外,OP正在尋找具有特定擴(kuò)展名的文件,該文件未反映在您的陳述中。
添加回答
舉報