找回密码
 加入
搜索
查看: 6058|回复: 11

关于读取listbox及listview写入XML文件的问题

  [复制链接]
发表于 2009-10-21 22:47:45 | 显示全部楼层 |阅读模式
本帖最后由 ashfinal 于 2009-10-21 23:01 编辑

关于XML函数的资料似乎不多,UDF _XMLDomWrapper.au3也没有什么例子。自己硬着头皮看了两天,写出来的东西还是一运行就崩溃。前几天有事放下一段时间,现在一看代码就头大。厚着脸皮上来问问各位高手...
思路是这样的:listbox含有分组信息,listview(共5个)对应分组另有数据。想把数据读取到XML文件。
看起来就像这样:

以下是部分代码(整体代码几百行,贴不下),大家帮忙看看有什么问题:
_XMLFileOpen("XPlode.xml")
_XMLCreateChildNode("XPlode4", "items")
$listcount = _GUICtrlListBox_GetCount($List1)
For $i = 1 To $listcount
        $title = _GUICtrlListBox_GetText($List1, $i - 1)
        _XMLCreateChildWAttr("XPlode4/items", "item", "display", $title)
        Select
                Case $i = 1
                $viewcount = _GUICtrlListView_GetItemCount($ListView2)
                For $j = 1 To $viewcount
                $split = StringSplit(_GUICtrlListView_GetItemTextString($ListView2, $j - 1), "|")
                $subtitle = StringMid($split[1], StringInStr($split[1], "KB"), 8)
                _XMLCreateChildWAttr("XPlode4/items/item[1]", "execute", "display", "正在安装 " & $subtitle & " 请稍候...")
                _XMLCreateChildNode("XPlode4/items/item[1]/execute[" & $j & "]", "program", "#XPLODE#\soft\" & $split[1])
                _XMLCreateChildNode("XPlode4/items/item[1]/execute[" & $j & "]", "arguments", $split[2])
                Next
                Case $i = 2
                $viewcount = _GUICtrlListView_GetItemCount($ListView3)
                For $k = 1 To $viewcount
                $split = StringSplit(_GUICtrlListView_GetItemTextString($ListView3, $k - 1), "|")
                $subtitle = StringMid($split[1], StringInStr($split[1], "KB"), 8)
                _XMLCreateChildWAttr("XPlode4/items/item[2]", "execute", "display", "正在安装 " & $subtitle & " 请稍候...")
                _XMLCreateChildNode("XPlode4/items/item[2]/execute[" & $k & "]", "program", "#XPLODE#\soft\" & $split[1])
                _XMLCreateChildNode("XPlode4/items/item[2]/execute[" & $k & "]", "arguments", $split[2])
                Next
                Case $i = 3
                $viewcount = _GUICtrlListView_GetItemCount($ListView4)
                For $l = 1 To $viewcount
                $split = StringSplit(_GUICtrlListView_GetItemTextString($ListView4, $l - 1), "|")
                $subtitle = StringMid($split[1], StringInStr($split[1], "KB"), 8)
                _XMLCreateChildWAttr("XPlode4/items/item[3]", "execute", "display", "正在安装 " & $subtitle & " 请稍候...")
                _XMLCreateChildNode("XPlode4/items/item[3]/execute[" & $l & "]", "program", "#XPLODE#\soft\" & $split[1])
                _XMLCreateChildNode("XPlode4/items/item[3]/execute[" & $l & "]", "arguments", $split[2])
                Next
                Case $i = 4
                $viewcount = _GUICtrlListView_GetItemCount($ListView5)
                For $m = 1 To $viewcount
                $split = StringSplit(_GUICtrlListView_GetItemTextString($ListView5, $m - 1), "|")
                $subtitle = StringMid($split[1], StringInStr($split[1], "KB"), 8)
                _XMLCreateChildWAttr("XPlode4/items/item[4]", "execute", "display", "正在安装 " & $subtitle & " 请稍候...")
                _XMLCreateChildNode("XPlode4/items/item[4]/execute[" & $m & "]", "program", "#XPLODE#\soft\" & $split[1])
                _XMLCreateChildNode("XPlode4/items/item[4]/execute[" & $m & "]", "arguments", $split[2])
                Next
                Case $i = 5
                $viewcount = _GUICtrlListView_GetItemCount($ListView6)
                For $n= 1 To $viewcount
                $split = StringSplit(_GUICtrlListView_GetItemTextString($ListView6, $n - 1), "|")
                $subtitle = StringMid($split[1], StringInStr($split[1], "KB"), 8)
                _XMLCreateChildWAttr("XPlode4/items/item[5]", "execute", "display", "正在安装 " & $subtitle & " 请稍候...")
                _XMLCreateChildNode("XPlode4/items/item[5]/execute[" & $n & "]", "program", "#XPLODE#\soft\" & $split[1])
                _XMLCreateChildNode("XPlode4/items/item[5]/execute[" & $n & "]", "arguments", $split[2])
                Next
        EndSelect
Next

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
 楼主| 发表于 2009-10-22 14:23:39 | 显示全部楼层
嗯,自己顶一下。貌似用到XML的时候挺多的,希望会有XML高手来指导一下。
不胜感激...
发表于 2009-10-22 14:49:09 | 显示全部楼层
对XML头疼,还是ini来的简单点
 楼主| 发表于 2009-10-22 23:22:18 | 显示全部楼层
网页中肯定有不少地方用的是XML,学一点东西还是必要的。
原来向同学夸海口三天之内完成,就差这最后一得瑟了。
唉,卡这了... 继续期待高手。
发表于 2009-10-23 00:56:48 | 显示全部楼层
这个函数在WINPE根本没有用。
 楼主| 发表于 2009-10-25 15:42:29 | 显示全部楼层
5# 四海皆狂龙
没准备在PE中使用啊,只需要开机运行一次就可以了。

麻烦高手们帮忙看看吧。
 楼主| 发表于 2009-10-25 15:44:20 | 显示全部楼层
如果哪位高手愿意帮忙的话,请把邮箱留下,我可以把全部源码发过去。
 楼主| 发表于 2009-10-27 15:50:37 | 显示全部楼层
浏览人数这么多。嗯,往前推一下。
发表于 2009-11-28 23:58:38 | 显示全部楼层
给你顶下  同求操作XML文件的方法
发表于 2010-3-7 11:23:55 | 显示全部楼层
支持一下,希望高手出招
发表于 2010-4-12 13:32:29 | 显示全部楼层
能不能用XMLDOM试试
发表于 2010-4-19 09:09:42 | 显示全部楼层
顶,看看学习一下再说
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-9-22 07:23 , Processed in 0.109520 second(s), 24 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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