将部分 XML 字符串解析为 XElement 列表

Posted

技术标签:

【中文标题】将部分 XML 字符串解析为 XElement 列表【英文标题】:Parse partial XML string to list of XElements 【发布时间】:2021-09-29 14:33:30 【问题描述】:

我有一个没有根元素的部分 XML 字符串。例如:

<Item Id="1">some text</Item>
<Item Id="2">some other text</Item>

我需要将此字符串转换为 XElements 列表。

有没有办法在不添加虚拟根元素或拆分字符串的情况下做到这一点?

【问题讨论】:

最简单的方法是使用字符串添加根: + xmlString + 【参考方案1】:

你试过“XElement.Parse”吗? https://docs.microsoft.com/en-us/dotnet/api/system.xml.linq.xelement.parse?view=net-5.0

【讨论】:

是的,这会给出 XmlException “有多个根元素。”。 除了根元素或复杂的解析和拆分函数之外,我没有看到任何选项。 @jdweng 给了一个很好的答案

以上是关于将部分 XML 字符串解析为 XElement 列表的主要内容,如果未能解决你的问题,请参考以下文章

将 XElement 转换为字符串

使用 XElement 解析 XML

如何将 Dictionary<XElement,XElement> 转换为 xml 文件?

如何将 XElement 转换为 XDocument

在 C# Compact Framework 中加速 XML 的解析(使用 XmlTextReader 和 XElement)?

c#对xml的操作