带有XmlPath查询条件读取XML文件中的特定节,用XmlDocument和XmlReader哪个好点?是不是XmlReader效率高些?
解决方案 »
- System.BadImageFormatException: 试图加载格式不正确的程序。 (异常来自 HRESULT:0x8007000B)
- 请教:如果给控件添加一新事件
- 关于解析<A href="http://localhost:88/hoh4/55555555">1212</A> 急啊,谢谢
- 如何加快VS2005的调试速度
- 如何將以下vb語句轉化為c#語句?帮帮忙,实在没分了
- C#中通过串口发送接收文件流的处理问题
- 教程:如何用C#实现Word里的字体选择下拉列表框
- Timer控件问题
- 请教,怎样将int,double[],DateTime的值拷贝到byte[]
- 在C#中如何实现通过扫描条码获得商品数据?(急)
- C#连sqlserver 未将对象引用设置到对象的实例
- .aspx这种网页脚本一共能获得多少客户端的信息
XmlReader是只读只进阅读器...类似于DataReader...适用范围有限...哪个效率更高由需求而定...读取特定节的话内容一般都不会太大...XmlDocument更灵活...
如果数据量极大,和XmlReader合适,
如果处理复杂频繁且文件不大,XmlDocument合适
如果数据量极大,和XmlReader合适,
如果处理复杂频繁且文件不大,XmlDocument合适说的很对,看具体应用了
1、我的处理文件中等吧,也就是语言文件包,不算小,大概也有600多K吧。
2、每次读取是根据提供的信息,读取指定节的内容,XML结果如下:
<root>
<phrasegroup name="group1">
<phrase name="phrase1"></phrase>
<phrase name="phrase2"></phrase>
</phrasegroup>
<phrasegroup name="group2">
<phrase name="phrase3"></phrase>
<phrase name="phrase4"></phrase>
</phrasegroup>
</root>
读取的时候就根据提供的group来读取特定节的内容,比如,group2我就读取该节下的内容,这应该算个很简单的查询吧。
至于说频繁处理的话,因为这个读取XML内容的代码是写成一个函数的,这个函数有可能会有多次调用。但是如果用XmlDocument的话,每次调用,其实也是都装载了一次。如果用XmlReader的话,我似乎也要循环读取,直到读取到我需要的节。我主要是想知道哪个效率高些(执行速度),因为文件大概也有600多K,不算小文件吧。谢谢指点。
看来大家都认为用XmlReader性能要好些哟。如果用XmlReader的话,假设我需要读取的节是最后一节,这样也需要从头到尾读取每个节,然后判断是否是我需要的节,如果不是就继续读取,直到最后。这样的情况下,性能会不会低呀?谢谢!