本帖最后由 touch_xu 于 2010-11-6 00:52 编辑
如下代码用用".*"搜索文件为什么没有结果,但是单个的如.txt,就能有结果.我想一次找多种类型的就不行吗,大家有什么好的快的方法啊^-^#CS
_Find($path, $type, $flag,ByRef $result)
说明:
$path:表示要搜索的位置,如"E:\abc",表示E盘下的abc文件夹,路径的末尾请勿加斜杠;
$type:表示文件类型,如".exe",一定要带点;
$flag:值为0,代表仅搜索该目录,不包括子目录;值为1,代表搜索该目录及其以下的所有子目录;
$result:表示要引用的数组,用来存放搜索结果,请先初始化要引用的数组为只拥有一个元素,如 Dim $get[1]
$result[0]:为搜索到的匹配个数
#CE
Func _Find($path, $type, $flag, ByRef $result)
$FileList = _FileListToArray($path)
If Not @error Then
For $i = 1 To $FileList[0] Step 1
If StringRight($FileList[$i], 4) = $type Then
_ArrayAdd($result, $path & "" & $FileList[$i])
$result[0] = UBound($result) - 1
Else
If $flag == 1 Then
_Find($path & "" & $FileList[$i], $type, $flag, $result)
EndIf
EndIf
Next
EndIf
EndFunc ;==>_Find
|