自己写的代码总提示 : The"e:\search.xml"XMLFile object was not found 的错误。怎样把这个XML文件添加到对象库?
用检查点可以实现:Insert--Checkpoint--XML Checkpoint,这样能把这个XML文件添加到对象库,其它方法呢?
是用代码能添加对象吗?
有上千个这样的XML文件,不用代码写简直....
Set XMLObj = XMLUtil.CreateXML() -----
XMLObj.LoadFile("E:\search.xml") ---------这两句具体什么意思我也不清楚,就是从帮助上搞的,添上去也没用
Set xml_data = XMLFile("E:\search.xml").GetData
Set children = xml_data.ChildElementsByPath("/page/portfolio/entry/symbol")
eleValue = children.Item(1).Value------------如果对象添加上的话,这里能取到600002.ss 这个值,但除了手工操作,如何把这个XML文件添加到
对象库中?
以上是问题1。
问题2:有1000个这样的XML文件的话又如何做? 将 Set xml_data = XMLFile("E:\search.xml").GetData 里面的文件地址E:\参数化?
问题3:如果XML地址是网络上的URL地址怎么办? 能否直接写 Set xml_data = XMLFile("http:\\www.finance.com\xml\600002.ss").GetData ?
Set xmlDoc = CreateObject("Microsoft.XMLDOM")
xmlDoc.async = False
xmlDoc.load strPath
If xmlDoc.parseError.errorCode <> 0 Then
MsgBox "XML loaded Failed.The reason is:" & xmlDoc.parseError.reason
Exit Sub
End If
Set xmlRoot = xmlDoc.documentElement
xmlStr = xmlRoot.nodeName & ": " & xmlRoot.nodeValue
If xmlRoot.childNodes.length <> 0 Then
xmlRecursive xmlRoot
End If
MsgBox xmlStr
End Sub
Sub xmlRecursive(byval xmlNode)
Dim xmlChildNode,xmlChildNodeLen,iLen
xmlChildNodeLen = xmlNode.childNodes.length
If xmlChildNodeLen = 0 Then Exit Sub
For iLen = 0 To xmlChildNodeLen - 1
Set xmlChildNode = xmlNode.childNodes.item(iLen)
xmlStr = xmlStr & Chr(13) & Chr(10) & xmlChildNode.nodeName & ": " & xmlChildNode.nodeValue
If xmlChildNode.childNodes.length <> 0 Then
xmlRecursive xmlChildNode
End If
Next
End sub作者: yuedao 时间: 2007-5-18 09:49
sdlkfj1
我之前确实搜索了,而且看到上面的这段儿代码,但我实在是看不懂其含义,而且现在没有足够的时间去细细研究,有闲点儿的朋友帮忙解释一下吗?多谢了~sdlkfj8
后来还是按照自己的思路进行的,
另外我把楼上这段儿代码复制后QTP运行,会弹出一该XML结构及内容的提示条,只能手动关闭,不明白是干嘛用的...
另外
.......................
Set xml_data = XMLFile("E:\search.xml").GetData
Set children = xml_data.ChildElementsByPath("/page/portfolio/entry/symbol")
eleValue = children.Item(1).Value
......................
这3行代码对吗?我觉得这样取值挺方便啊? 但必须先把E:\search.xml这个对象添加到对象库。
或者能录制时添加XML对象吗?如果可以的话先跑1000次把1000个XML文件都添加到对象库中问题就解决了,直接用上面3行代码就OK。