找回密码
 加入
搜索
查看: 2077|回复: 1

[系统综合] 如何批量扫描并写入INI多种图片格式?????

[复制链接]
发表于 2010-7-24 21:12:13 | 显示全部楼层 |阅读模式
以下代码只能扫描出一种图片格式的。。例如我现在要扫描出多种图片格式如: bmp jpg png 等格式并只在一个循环中搞定
我想在一个循环中直接扫描多种格式出来应该怎么做???????????
$var="c:\windows"
$search = FileFindFirstFile($var&"\*.jpg") 
$i=0
; 检查搜索是否成功
If $search = -1 Then
    MsgBox(0, "错误", "没有文件/目录 匹配搜索")
    Else
While 1
    $file = FileFindNextFile($search) 
    If @error Then ExitLoop
        $i+=1
        IniWrite("cfg.ini",$var,$i,$file)
    MsgBox(4096, "文件:", $file)
WEnd
;MsgBox(64,"123","OK")
; 关闭搜索句柄
EndIf
FileClose($search)
cfg.ini 配置文件如下:
[C:\WINDOWS]
1=http_imgload2.jpg
2=http_imgload.jpg
3=aaa.bmp
5=8888.png
发表于 2010-7-24 23:57:04 | 显示全部楼层
本帖最后由 水木子 于 2010-7-24 23:58 编辑

有点乱!不知道行不行。。。试试!
#include <File.au3>
#include <Array.au3>
Local $aPicture[3] = ['.bmp', '.jpg', '.png'] ;需要搜索的图片格式
Local $iNumber
Local $sConfig = @ScriptDir & '\Config.ini'

Findfile('D:\我的文档\My Pictures') ;这里是需要搜索的目录

Func Findfile($Path)
        $aFileList = _FileListToArray($Path)
        If Not @error Then
                For $i = 1 To $aFileList[0]
                        $sText = StringRegExp($aFileList[$i], '\.\w{3}', 3)
                        If _ArraySearch($aPicture, $sText[0]) <> -1 Then
                                $iNumber += 1
                                IniWrite($sConfig, 'Config', $iNumber, $Path & '\' & $aFileList[$i])
                        EndIf
                Next
        EndIf
EndFunc   ;==>Findfile

评分

参与人数 1威望 +2 收起 理由
afan + 2

查看全部评分

您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-12-24 00:48 , Processed in 0.272026 second(s), 27 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表