vbs对xml的文本节点写数据解决思路
vbs对xml的文本节点写数据
通过如下vbs代码对xml进行读取的操作后,想对对应的文本节点进行写的操作。发现无效
通过这个赋值语句改变文本节点的值:Nodelist(i).childnodes(0).nodevalue = i
请哪位大侠指点下。
xml_learn.xml如下:
------解决思路----------------------
你把下面循环中语句对调一下,会发现什么?
==》
通过如下vbs代码对xml进行读取的操作后,想对对应的文本节点进行写的操作。发现无效
通过这个赋值语句改变文本节点的值:Nodelist(i).childnodes(0).nodevalue = i
请哪位大侠指点下。
dim Nodelist
dim s,i,strNode
GetXml "C:\Users\Administrator\Desktop\vbs xml\xml_learn.xml","author"
s = Nodelist.length
for i = 0 to s-1
strNode = strNode & Nodelist(i).childnodes(0).nodevalue & chr(13)
Nodelist(i).childnodes(0).nodevalue = i
next
msgbox strNode
msgbox s
Function GetXml(byval strXmlFilePath,byval xmlNodename)
dim xmlDoc,xmlRoot
Set xmlDoc = CreateObject("Microsoft.XMLDOM")
xmlDoc.async = False
xmlDoc.load strXmlFilePath
if xmlDoc.parseError.errorCode <> 0 then
msgbox "XML文件格式不对,原因是: "& xmlDoc.parseError.reason
Exit Function
end if
Set xmlRoot = xmlDoc.documentElement
set Nodelist = xmlRoot.getElementsByTagname(xmlNodename)
GetXml = True
end function
xml_learn.xml如下:
------解决思路----------------------
你把下面循环中语句对调一下,会发现什么?
For i = 0 To s - 1
strNode = strNode & Nodelist(i).childnodes(0).nodevalue & Chr(13)
Nodelist(i).childnodes(0).nodevalue = i
Next
==》
For i = 0 To s - 1
Nodelist(i).childnodes(0).nodevalue = i
strNode = strNode & Nodelist(i).childnodes(0).nodevalue & Chr(13)
Next