我搜索了许多关于读取XML文件的示例和教程,但我无法从单个XML文档中提取值。我认为我对Value,SingleNode,Text等声明感到困惑。
<?xml version="1.0" encoding="utf-8"?>
<resultObj>
<result>False</result>
<invoiceNumber>1</invoiceNumber>
<invoiceDate>2016/05/18 08:26:35</invoiceDate>
</resultObj>
VBScript(使用经典ASP)读取结果:
Set xmlDOM = Server.CreateObject("MSXML2.DOMDocument")
xmlDOM.async = False
xmlDOM.setProperty "ServerHTTPRequest", True
xmlDOM.Load("file.xml")
Set myroot= xmlDOM.selectSingleNode("/resultObj/result")
response.write myroot.Text
最后一行出错:
Microsoft VBScript运行时错误&#39; 800a01a8&#39;
需要对象
答案 0 :(得分:3)
假设您实际从ASP页面运行此代码,我怀疑您在加载文件时遇到问题(可能不在Web服务器进程的当前工作目录中)。由于Load
和SelectSingleNode
都会无声地失败而不会引发错误,因此您需要在加载文件后检查ParseError
属性的值:
xmlDOM.Load("file.xml")
If xmlDOM.ParseError <> 0 Then
response.write xmlDOM.ParseError.Reason
Else
response.write "file loaded"
End If