jycel 发表于 2009-9-10 12:24:39

[已解决]ini格式转换困惑

本帖最后由 jycel 于 2009-9-10 14:09 编辑

解决方法:二楼
二个配置文件
listA.ini和listBini
listA.ini格式
[程序列表]
病毒免役=病毒免役.bat
服务优化=服务优化.bat
磁盘清理=磁盘清理.bat
端口关闭=端口关闭.bat

listBini格式
[字段名]
正确定的
关键字=病毒免役|服务优化|磁盘清理|端口关闭


我从listA.ini中读取配置文件,转换成listB.ini的格式
如我写的代码
前面会生成一个空字符,不知道还有没有更好的方法不要它
因为表中中关键字我无法确定有多位,有可能更多!
错误的:关键字=|毒免役|服务优化|磁盘清理|端口关闭
$ini="listA.ini"
$list="listB.ini"
Dim $listsj=IniReadSection($ini,"程序列表")
If @error Then
        MsgBox(0,"提示:附加程序列表读取失败!原因:未找到相关数据!")
Else
                IniDelete($list,"字段名","关键字")
        For $l = 1 to $listsj
                $j=IniRead($list,"字段名","关键字","")
                IniWrite($list,"字段名","关键字",$j&"|"&$listsj[$l])
        next
EndIf

afan 发表于 2009-9-10 13:51:07

本帖最后由 afan 于 2009-9-10 13:52 编辑

Dim $ini = "listA.ini", $list = "listB.ini"
$listsj = IniReadSection($ini, "程序列表")
If @error Then Exit (MsgBox(0, "提示:附加程序列表读取失败!原因:未找到相关数据!"))
IniDelete($list, "字段名", "关键字")
For $l = 1 To $listsj
        $j = IniRead($list, "字段名", "关键字", "")
        If $l = 1 Then IniWrite($list, "字段名", "关键字", $listsj[$l])
        If $l > 1 Then IniWrite($list, "字段名", "关键字", $j & "|" & $listsj[$l])
Next

jycel 发表于 2009-9-10 14:06:03

学习了!谢谢哈!
页: [1]
查看完整版本: [已解决]ini格式转换困惑