來壹張效果圖。
壹個是源代碼
$dir?=?”D:\ h”;尋找的道路
$str?=?搜索($ dir);調用搜索函數來查找路徑
$arr?=?StringSplit($str,"|");將搜索函數返回的字符串拆分成數組,數組元素就是壹個文件的完整路徑。
$file?=?$ arr將數組arr復制到文件中,使文件成為與arr大小相同的數組,只是為了構造壹個大小相同的數組。
$j?=?1
;周期?數組arr中
為了什麽?$i?=?1?去哪?$arr[0]
$p?=?StringInStr($arr[$i],?"\",?0,?-1);從路徑末尾向前查找路徑分隔符“\”在字符串中的位置。
$filename?=?StringMid($arr[$i],?$ p+1);截取文件名
;如果文件名包含字符串FRA,它將被復制到數組文件中。
如果?StringInStr($filename,"法國"0)?然後
$file[$j]?=?$arr[$i]
$j?+=?1
EndIf
然後
$n?=?$j?-?1;循環結束時j-1的值是包含FRA的文件數。
;buf字符串的內容將用於寫入文件。
$buf?=?"找到的文件總數:"?& amp?$n?& amp?"?壹個"?& amp@CRLF
;Loop將數組文件中的路徑拼接到buf上。
為了什麽?$j?=?1?去哪?$n
$buf?& amp=?$file[$j]?& amp?@CRLF
然後
;創建統計報告。腳本所在目錄下的txt。
$fp?=?FileOpen(@ScriptDir?& amp?" \統計報告。txt ",?10)
FileWrite($fp,?$ buf);將buf的內容寫入統計報告。txt。
file close($ FP);關閉由fileopen函數打開的文件。
運行(@WindowsDir?& amp?" \Notepad.exe?"?& amp?@ScriptDir?& amp?" \統計報告。txt ",?"");用啟動記事本打開生成的文件。
;遞歸搜索函數,遞歸搜索*。*,支持子目錄,以字符串形式返回所有文件的路徑。
;在路徑之間使用?豎線“|”是分開的。
Func?搜索($路徑)
$ret?=?""
$handle?=?FileFindFirstFile($path?& amp?"\*.*")
如果?$handle?=?-1?然後呢?回歸?$ret
什麽時候?1
$file?=?FileFindNextFile($handle)
如果?@錯誤?然後呢?ExitLoop
如果?@擴展?然後
$tmp?=?搜索($路徑?& amp?"\"?& amp?$file)
其他
$tmp?=?$path?& amp?"\"?& amp?$file
EndIf
如果?$tmp?& lt& gt?""?然後
如果?$ret?=?""?然後
$ret?=?$tmp
其他
$ret?=?$ret?& amp?"|"?& amp?$tmp
EndIf
EndIf
行
回歸?$ret
EndFunc