gpt4 book ai didi

xml - 在 VBScript 中解析 XML 字符串

转载 作者:数据小太阳 更新时间:2023-10-29 02:04:48 27 4
gpt4 key购买 nike

我有一个 Web 服务,它返回类似于下面的 XML 字符串:

<?xml version="1.0"?>
<Result>
<PersonID>991166187</PersonID>
<AddressID>1303836</AddressID>
</Result>

我需要一个 VBScript 代码来检索 PersonIDAddressID 的值。我的具体问题是如何从我原始帖子中的 XML 字符串中检索 PersonID 的值,即 991166187

就我所尝试的而言,我有以下代码:

Dim doc
Dim xmlString
Dim nodes
Dim idArray

xmlString = "<?xml version="1.0"?><Result><PersonID>991166187</PersonID><AddressID>1303836</Address&#8204;&#8203;ID></Result>"

Set doc = CreateObject("MSXML2.DOMDocument")
doc.loadXML(xmlString)

'Set nodes = doc.selectNodes("Result/PersonID/AddressID")
nodes = doc.getElementsByTagName("PersonID")

For Each node In nodes
WScript.Echo "Person ID: " & node.text

最佳答案

检查了您的代码,您需要编辑一些内容:

  1. 您获得的 XML 字符串中有双引号。您不能直接使用那些双引号并将其保存到字符串中。您在这里有两个选择:
    1. 从字符串创建一个 XML 文件并解析
    2. 使用 Replace 将双引号替换为单引号
  2. getElementsByTagName 行中应该有一个 Set,因为返回的值是一个对象。

在我的机器上使用此代码并检索到所需的输出:

Dim doc 
Dim xmlString
Dim nodes
xmlString = "<?xml version='1.0'?><Result><PersonID>991166187</PersonID><AddressID>1303836</AddressID></Result>"

Set doc = CreateObject("MSXML2.DOMDocument")
doc.loadXML(xmlString)
Set nodes = doc.getElementsByTagName("PersonID")

For Each node In nodes
MsgBox "Person ID: " & node.text
Next
MsgBox "done"

关于xml - 在 VBScript 中解析 XML 字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33187289/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com