【发布时间】:2021-12-18 18:04:07
【问题描述】:
给定这样的 XML 结构:
<?xml version="1.0" encoding="UTF-8"?>
<JSON>
<allFiles>
<_-Mna81v3-W_7WC1w69n9>
<name type="string">File1</name>
<reason type="string">Issue1</reason>
<status type="string">Pending</status>
<submissionTime type="string">11/3/2021, 10:11:37 AM</submissionTime>
</_-Mna81v3-W_7WC1w69n9>
<_-Mna83OkLF8vB8fV6CIy>
<name type="string">File2</name>
<reason type="string">Other</reason>
<status type="string">Pending</status>
<submissionTime type="string">11/3/2021, 10:11:44 AM</submissionTime>
</_-Mna83OkLF8vB8fV6CIy>
</allFiles>
</JSON>
您可以看到 allFiles 中的子节点是通用名称,我该如何定位它们?
我尝试通过以下方式退货
/JSON/allFiles[1]
File1 IssuePending11/3/2021, 10:11:37 AMFile2OtherPending11/3/2021, 10:11:44 AM
/JSON/allFiles/*
返回第一个子节点如下
File1 Issue1Pending11/3/2021, 10:11:37 AM
我很困惑如何定位 allFiles 的子节点(_-Mna81v3-W_7WC1w69n9 和 _-Mna83OkLF8vB8fV6CIy)而不在命令中提及它们的名称,因为它们是通用的并且会发生变化。
【问题讨论】:
-
正如 Kay 博士所回答的,您的
/JSON/allFiles/*语法是正确的,但如果它以您显示的字符串格式返回节点,您需要提供有关如何调用XPath 以及您使用的工具。