2011-10-24 99 views
1

我決定在可執行文件中附帶.ini文件,以便我不必硬編碼出現在下拉菜單中的項目。我創建了.ini文件並使用IniReadSection函數,我已經能夠查看該部分並輸出該部分中的每個Key = Value對。將INI文件中的值讀入字符串數組

我該如何去把值只放入一個字符串數組?我正在使用AutoIT編寫此實用程序。

回答

3

我做了這個ini文件:

[JHamill] 
key1=value1 
key2=value2 
key3=value3 

我花了一點從IniReadSection示例代碼和修改這是能夠使用它的下拉菜單。

$var = IniReadSection("test.ini", "JHamill") 

$str = "" 
For $i = 1 To $var[0][0] 
    $str &= $var[$i][1] & "|" 
Next 
$str = StringTrimRight($str, 1) 

GUICreate("JHamill GUI combo") 

GUICtrlCreateCombo("", 10, 10) 
GUICtrlSetData(-1, $str) 

GUISetState() 

While 1 
    $msg = GUIGetMsg() 

    If $msg = -3 Then ExitLoop 
WEnd 

在這裏你看到你不必爲了使它工作而創建一個新的數組。但是,既然你問過了,先做一個新的數組,然後再使用這個數組來填充組合框,然後用這個數組填充組合框,這裏也是一樣的:

#include <Array.au3> 

$var = IniReadSection("test.ini", "JHamill") 

Local $arr[$var[0][0]] 
For $i = 1 To $var[0][0] 
    $arr[$i-1] = $var[$i][1] 
Next 
_ArrayDisplay($arr)