gogo023 发表于 2009-3-22 01:44:22

一个INI读取问题

如下图:
用什么方法可以分别读出和里的数据,得出的结果如下,
msgbox(0, $var, $vo)
$var 是取里的1=的字符
$vo 是取里的1=的字符
用到 for ..to .. 里,
msgbox里 $var 一值都是里1=的字符 ,
               $vo 一值都是里面1=的字符,
当里没有1= xx 以后,$var 就是2=的字符,$vo 就是2=的字符。

虽然有点乱,但希望有人能看明白。

[ 本帖最后由 gogo023 于 2009-3-26 00:43 编辑 ]

ddx13 发表于 2009-3-22 21:03:21

IniReadSection ( "文件名", "字段名" )if $vo[$s]=1 then 取CONFIG里的第一个。

gogo023 发表于 2009-3-23 05:17:22

原帖由 ddx13 于 2009-3-22 21:03 发表 http://www.autoitx.com/images/common/back.gif
IniReadSection ( "文件名", "字段名" )if $vo[$s]=1 then 取CONFIG里的第一个。

不太明白你的意思,发段代码来看看。

sxd 发表于 2009-3-23 08:02:37

如果1楼的看不懂 那就请仔细看 IniReadSection 的帮助咯

gogo023 发表于 2009-3-24 00:49:39

不知道是我没有说明白,还是我太笨。
我要的效果如图。

laojikelly 发表于 2009-3-24 06:55:56

我晕。。。刚刚才看到论坛上面有这么一个例子。。。现在忘记跑哪去了。。。。
楼主去找找吧。。。

gogo023 发表于 2009-3-25 07:18:44

谁能给处明确点的方法或一小段代码。

wanghanxqh 发表于 2009-3-25 16:13:34

;~ 程序中指明了要搜索的字段,如果字段名换了,程序可能就不能得到预期的结果。本人属菜鸟,有高手解决的话也告诉我一声。
Global $iniSectionName,$iniSectionValue,$var,$path
$path = "your inifile path"
getiniSectionName()
;~ 获取ini文件字段名
Func getiniSectionName()
$iniSectionName = IniReadSectionNames($path)
Local $iniresult = "",$iniresultcom = ""
if @error Then
        MsgBox(1,"error","don't open inifile.")
Else
;~         For $i = 1 to $iniSectionName Step 1
;~                 MsgBox(1,"Sectionname",$iniSectionName[$i])
;~         Next
        getiniSectionKey($iniSectionName)
EndIf
EndFunc

;~ 获取ini文件具体键值
Func getiniSectionKey($sectionname)
        Local $ReturnValue,$titalValue
        $iniSectionValue = IniReadSection($path,$sectionname)
If @error Then
    MsgBox(4096, "", "发生错误,可能目标文件并非标准的INI文件.")
Else
    For $var = 1 To $iniSectionValue
;~         MsgBox(4096, "", "关键字:" & $iniSectionValue[$var] & @CRLF & "数值:" & $iniSectionValue[$var])
                $sectionname = "com";指定要搜索的字段信息。com字段。
                $ReturnValue = $iniSectionValue[$var]
                $titalValue = $iniSectionValue[$var]
                readinifile($sectionname,$ReturnValue,$titalValue)
    Next
EndIf
EndFunc
;~ 读取ini字段数据
Func readinifile($inivalue,$x,$tital)
        Local $iniFileRead,$z
        $iniFileRead = IniReadSection($path,$inivalue)
        If @error Then
                MsgBox(4096, "", "发生错误,可能目标文件并非标准的INI文件.")
        Else
                for $z =1 to $iniFileRead
                        if $iniFileRead[$z] == $x Then
                                MsgBox(4096, $tital, "数值:" & $iniFileRead[$z])
                        EndIf
                Next
        EndIf
EndFunc

gogo023 发表于 2009-3-26 00:43:07

我已经落伍了哟。
页: [1]
查看完整版本: 一个INI读取问题