我已经大规模出现,但从来没有做过的XML解析。

:如果我有类似于这种格式的文件很多工作
<?xml version="1.0" ?>
<items comment="something...">
  <uid>6523453</uid>
  <uid>94593453</uid>
</items>

什么是分析这些文件以最快的方式?点击 1)XML DOM结果 2)XML序列化 - 补充水分,以.NET对象点击 3)其他一些方法

<强>更新结果 我忘了提会有平均约8000 UID元件。

有帮助吗?

解决方案

使用 XmlReader 是肯定会是最快的方法,但你必须做所有的解析手动的过程。它直接从流中读取缓存没有任何东西,但它不是太方便相比,DOM使用。

两相比较,你的建议:序列化应该是比使用DOM更快,因为(我相信)它不内存中缓存整个树 - 它也肯定有一个易于使用的界面,如果你明确目标执行串行化。

其他提示

我要说的是Xml序列将是两全其美。你得到的易用性,以及良好的速度。没有与XML序列化一些额外的开销......但是如果你用手动的XmlReader,你至少会复制,如果没有超过,你自己说的开销,您使用的读者重新创建对象图。

根据您所需要的数据通过@Noldorin提到的XmlReader是流式的处理最好的办法做什么。如果您需要更多的ad-hoc方式来访问使用XPath和XPathDocument中的数据会比原始XML文档快得多。

http://msdn.microsoft.com/en-us/library /eh3exdc4.aspx

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top