从FileOpenDialog()处理多个文件名

时间:2011-10-24 09:16:08

标签: string split dialog autoit

我正在编写图片编辑程序,并使用以下代码段来选择文件:

$var = FileOpenDialog("",@DesktopDir,"Images (*.jpg;*.bmp;*.png)",1+4)
$var = StringReplace($var, "|", @CRLF)

当我选择多个文件时,所有文件名都存储在由$var符号分隔的|中。我用换行符替换该符号。但我需要为所有文件名运行程序,我无法弄清楚如何将各种文件名与变量分开。因此,如果我选择多个文件,我的程序就会停止。

1 个答案:

答案 0 :(得分:5)

$var = FileOpenDialog("", @DesktopDir, "Images (*.jpg;*.bmp;*.png)", 1+4)
$files = StringSplit($var, "|", 2)

For $i = 0 To UBound($files)-1
    $file = $files[$i]
    ConsoleWrite($file & @CRLF) ; Do something with file
Next

对我来说,结果如下:

C:\Users\Manadar\Desktop
skin1.png
skin2.png

所以它是:

  • 文件目录
  • File1中
  • 文件2
  • 文件3