【发布时间】:2016-12-23 04:31:08
【问题描述】:
我有一个带有类似 XML 标记的字符串
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<lab:lab xmlns:udf="http://ghjhjhj.com/ri/userdefined"
xmlns:ri="http://kjkj.com/ri"
xmlns:lab="http://iuiuu.com/ri/lab"
uri="https://hhjjhjhj.org/api/v2/labs/1">
<name>Administrative Lab</name>
<billing-address>
<street></street>
<city></city>
<state></state>
<country></country>
<postalCode></postalCode>
<institution></institution>
<department></department>
</billing-address>
<shipping-address>
<street></street>
<city></city>
<state></state>
<country></country>
<postalCode></postalCode>
<institution></institution>
<department></department>
</shipping-address>
<udf:field type="String" name="Account ID">adm</udf:field>
<website></website>
</lab:lab>"
为了只提取值 adm 即 <udf> 标记之间的任何值,我应该使用 XDocument 还是 XmlDocument。我知道我可以使用 XDocument.Parse 但这我不知道如何给出标记名称.我在下面尝试过
XDocument new_doc = XDocument.Parse(new_responseString);
var a = from udf in new_doc.Descendants("udf") select udf.Value;
但将来可能会有额外的 udf 字段,所以我要检查的应该是 name="Account ID",我不知道该怎么做
我怎样才能找回这个?
【问题讨论】:
-
你能分享你完整的 XML 或更大的部分吗?到目前为止你有什么尝试?
-
可能重复。请参考此answer。希望这会有所帮助。
-
@MohitShrivastava 我已经编辑了整个字符串。我知道我可以使用 XDocument.Parse 但这我不知道如何给标签名称
-
@MohitShrivastava 请帮帮我。我已经添加了我尝试过的内容以及完整的字符串是什么
标签: c# xml xml-parsing