kangaroobf 发表于 2013-7-26 12:28:21

求助:如何搜索磁盘里所有的jpg文件,并存储在数组里?

我用过论坛里有人发的递归查找的函数,查所有文件可以,可是无法查指定类型的文件。菜鸟求指导

user3000 发表于 2013-7-26 19:13:01

回复 1# kangaroobf

帮助里已经有了清楚示例!
但搜索子目录文件时,无法指定文件类型. 所以需要我们变通一下,只记录自己想要的文件类型.
#include<array.au3>
Local $a
FindAllFile('C:\Users\Alam\Desktop\666', $a)
_ArrayDisplay($a, $a)

Func FindAllFile($sDir, ByRef $aArray)
        Local $sFile, $hSearch
        If Not IsArray($aArray) Then Return SetError(1)
        $hSearch = FileFindFirstFile($sDir & "\*.*")
        ; 检查搜索是否成功
        If $hSearch = -1 Then Return
        While 1
                Local $sFile = FileFindNextFile($hSearch)
                If @error Then ExitLoop               
                If @extended Then
                        FindAllFile($sDir & "\" & $sFile, $aArray)
                        ContinueLoop
                EndIf
      If StringInStr($sFile, '.jpg') Then
                _ArrayAdd($aArray, $sDir & "\" & $sFile)
                $aArray += 1
                EndIf
        WEnd
        ; 关闭搜索句柄
        FileClose($hSearch)
EndFunc

kangaroobf 发表于 2013-7-27 07:15:28

回复 2# user3000
谢谢,我当时想的是查找完之后再从数组里删,结果卡住了!
页: [1]
查看完整版本: 求助:如何搜索磁盘里所有的jpg文件,并存储在数组里?