问题描述
|
我有一个由多个xml文件组成的大xml文件。文件结构是这样的。
<xml1>
</xml1>
<xml2>
</xml2>
<xml3>
</xml3>
.
.
<xmln>
</xmln>
我想通过LINQ语句处理每个XML文件,但是我不确定如何从文件中分别提取每个XML元素并继续迭代直到最后。我认为这里的专家能够为我提供所需的帮助。我的要求是提取单个元素,以便可以加载到XDoc元素中进行进一步处理,并继续进行后续元素。任何帮助,将不胜感激。
谢谢阅读!!
解决方法
假设每个元素都是有效的XML,则可以将文档包装在顶级标签中,然后加载就可以了:
<wrap>
<xml1>
</xml1>
<xml2>
</xml2>
</wrap>
,您可以使用System.Xml引用,该引用包含许多内置功能,并且它允许您声明XmlTextReader。更多信息在这里。
,如果这是包含单个格式正确的xml元素的错误日志,则您可能不想将其加载为XMLDocument
。更好的选择是使用由ѭ4创建的XPathDocument
,其中XmlReaderSettings
指定ConformanceLevel.Fragment
。然后,您可以根据需要使用ѭ7来访问元素和属性。请参阅此论坛帖子中的第三个答案以获取示例代码。
...仅仅一年后,然后是一些:)