51Testing软件测试论坛

标题: VBS 修改XML文件的问题 [打印本页]

作者: beibeiyier    时间: 2012-9-6 16:10
标题: VBS 修改XML文件的问题
现在需要对某个XML文件的一个标记中的值进行修改,比如
<root>
    <BIG>
                <BIG01>20111024</BIG01>
                <BIG02>2253-11</BIG02>
                <BIG03>20110810</BIG03>
                <BIG04>PO-0666-41</BIG04>
                <BIG07>AI</BIG07>
        </BIG>
</root>
需要把<BIG02>中2253-11改为当前日期,我写了以下代码,但不知道为什么不执行If之后的语句,应该是条件不满足,不知道应该怎么样修改,请各位大侠帮忙看看吧~感激膜拜啊~
Dim  xmldoc,a
Set xmlDoc = CreateObject("Microsoft.XMLDOM")
xmlDoc.async = False   
xmlDoc.load "c:\TEMP\For case_ 0245.xml"
a=date()  
msgbox (a)
If xmlDoc.parseError.errorCode <> 0 Then   
   Set myErr = xmlDoc.parseError
   MsgBox("XML Loads Failed. " & myErr.reason)
End If
        Set rootNode = xmlDoc.documentElement
               
                        Set BIGnode=rootNode.childnodes(3)
                        Set BIG02node=BIGnode.childnodes(1)

               If BIG02node.nodevalue="<BIG02>2253-11</BIG02>" Then
           BIG02node.nodevalue=a
                   msgbox(BIG02node.nodevalue)
               End If
xmlDoc.save "test_save.xml"
作者: lantianwei    时间: 2012-9-7 13:48
Dim  xmlDoc,a
Set xmlDoc = CreateObject("Microsoft.XMLDOM")
xmlDoc.async = False   
xmlDoc.load "c:\b.xml"
a=date()  
msgbox (a)

If xmlDoc.parseError.errorCode <> 0 Then   
        Set myErr = xmlDoc.parseError
        MsgBox "XML Loads Failed. " & myErr.reason
Else

        Set rootNode = xmlDoc.documentElement

        If rootNode.childnodes(0).childnodes(1).nodename="BIG02" Then
                rootNode.childnodes(0).childnodes(1).text=a
                msgbox(rootNode.childnodes(0).childnodes(1).text)
        End If
        xmlDoc.save "test_save.xml"
End If

Set xmlDoc=nothing

另外建议去网上找下标准的写法 应该有这样XML的类库
作者: beibeiyier    时间: 2012-9-7 15:08
谢谢啊~~




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2