社区
C#
帖子详情
急待解决:两个结构相同的XML文件比较,提取添加,修改,删除的节点内容
yinglu206
2010-03-31 03:33:41
如果用XML遍历节点,效率应该很低,也比较麻烦,在网上找的还有DataSet,DataTable的方案。大家出出主意,帮小妹想想方案。谢谢了,我下周结贴。
如果有例子,我会加分的。我Xml只会基础的操作。不知道C#3.5有没有直接Find节点,比较节点的类库。
...全文
134
12
打赏
收藏
急待解决:两个结构相同的XML文件比较,提取添加,修改,删除的节点内容
如果用XML遍历节点,效率应该很低,也比较麻烦,在网上找的还有DataSet,DataTable的方案。大家出出主意,帮小妹想想方案。谢谢了,我下周结贴。 如果有例子,我会加分的。我Xml只会基础的操作。不知道C#3.5有没有直接Find节点,比较节点的类库。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
12 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
yinglu206
2010-04-09
打赏
举报
回复
这段时间忙,没来看回帖,没想到100分的帖子才这么少的回帖。
不过问题已经解决了,看来还说要靠自己。还说要谢谢你们哦。结贴了。
wanghui0380
2010-04-01
打赏
举报
回复
请确定判定标准,然后再说方案
要考虑的问题:是否有唯一标识字段和判定标准,数据格式样例
没这些前提的话,我们只能给你那种你认为的“无效率”的通用解
happyboyxq
2010-04-01
打赏
举报
回复
XmlDocument doc = new XmlDocument();
doc.Load(LoadPath);
XmlNode xn1 = doc.SelectSingleNode("root//address");
这样不就直接把address的节点读出来了吗。
adam
2010-04-01
打赏
举报
回复
HOW TO:使用 Visual C# .NET 通过 XPath 表达式查询 XML:
http://support.microsoft.com/kb/308333/zh-cn
blog:
http://hi.baidu.com/mycourt/blog/item/b7189c4b761f072a08f7ef65.html
http://www.blogjava.net/Rookie/archive/2008/01/10/174399.html
mjay0210
2010-04-01
打赏
举报
回复
只要是查找 无外乎 遍历 和 对应
一个是数组 一个是 字典
你要想完全脱离,只要考虑别用xml。 换种更合适的存储结构。不是说xml就是神,他只在扩展性上,性能真的不怎么地!
adam
2010-04-01
打赏
举报
回复
"books.xml" :
<?xml version="1.0" encoding="ISO-8859-1"?>
<bookstore>
<book category="COOKING">
<title lang="en">Everyday Italian</title>
<author>Giada De Laurentiis</author>
<year>2005</year>
<price>30.00</price>
</book>
<book category="CHILDREN">
<title lang="en">Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
<book category="WEB">
<title lang="en">XQuery Kick Start</title>
<author>James McGovern</author>
<author>Per Bothner</author>
<author>Kurt Cagle</author>
<author>James Linn</author>
<author>Vaidyanathan Nagarajan</author>
<year>2003</year>
<price>49.99</price>
</book>
<book category="WEB">
<title lang="en">Learning XML</title>
<author>Erik T. Ray</author>
<year>2003</year>
<price>39.95</price>
</book>
</bookstore>
节点选取
set xmlDoc=CreateObject("Microsoft.XMLDOM")
xmlDoc.async="false"
xmlDoc.load("books.xml")
xmlDoc.selectNodes(路径表达式)
选取价格高于 35 的 price 价格
xmlDoc.selectNodes("/bookstore/book[price>35]/price")
选取价格高于 35 的 title 节点
xmlDoc.selectNodes("/bookstore/book[price>35]/title")
adam
2010-04-01
打赏
举报
回复
建议,使用XPath来处理,会对遍历效率有所提高,因为是先编译,后查找,比遍历的方法要优化一点。
-----------------------------------------------------------------------------------------
楼主给点分,1分不少,10分不多,拜谢!
楼主给点分,1分不少,10分不多,拜谢!
楼主给点分,1分不少,10分不多,拜谢!
楼主给点分,1分不少,10分不多,拜谢!
楼主给点分,1分不少,10分不多,拜谢!
楼主给点分,1分不少,10分不多,拜谢!
ouzui
2010-04-01
打赏
举报
回复
删除 和 追加 相似 一个RemoveChild,一个AppendChild。。。
yinglu206
2010-04-01
打赏
举报
回复
我现在还是选择了用XML循环遍历,XML文件比较复杂,只能选择用foreach循环遍历一个文件,然后再根据NodeName用XPath到另一个文件去找对应的Node,然后比较是删除了,还是修改了。不过添加的暂时还没有思路。哪位大侠做过啊,帮帮忙了!
springdream
2010-03-31
打赏
举报
回复
会基础的就可以,xml如果不复杂可以读到dataSet里,然后对dataTable进行查询,如dataTable.select('')效率应该可以满意,若比较复杂,还是老实用xpath吧。
liuh6
2010-03-31
打赏
举报
回复
需求不明确.
说个思路.把XML读取到DataSet里面.从DataSet里查找可否?这样效率快,但占资源.
别递烟哥不会
2010-03-31
打赏
举报
回复
我猜就是有find之类的方法,实质应该也是遍历,效率也不会提高多少额·
我在CSDN参与的3000个帖子
今日偶然翻到,感慨万千 1:申述:版主,是否扣了我的专家分? 2:100分急求,随机输出十个小写字母,但是,要求这十个字母不
相同
3:求Sn=a+aa+aaa+…+aaa…a(n个a)之值 4:数组题 望高手帮忙! 5:呵呵,来推荐一下我的网站,本站提供大量当今流行的免费的音乐和免费电影,常用软件、游戏、精美图库下载,希望对网友有帮助!顺便散分! 6:VBA请教怎
Linux驱动开发全流程详细解析
转载自:https://zhuanlan.zhihu.com/p/674992865?utm_id=0一、驱动概念驱动与底层硬件直接打交道,充当了硬件与应用软件中间的桥梁。具体任务读写设备寄存器(实现控制的方式)完成设备的轮询、中断处理、DMA通信(CPU与外设通信的方式)进行物理内存向虚拟内存的映射(在开启硬件MMU的情况下)说明:设备驱动的
两个
任务方向操作硬件(向下)将驱动程序通入内核,实现面向操作系统内核的接口
内容
,接口由操作系统实现(向上)
i.MX6ULL终结者Linux中断实验Linux中断简介
文章目录1 Linux中断介绍2 Linux中断相关函数3 顶半部与底半部4 设备树中的中断
节点
5 驱动获取中断号函数 1 Linux中断介绍 中断是指CPU在执行程序的过程中,出现了某些突发事件
急待
处理,CPU必须暂停当前程序的执行,转去处理突发事件,处理完毕后又返回原程序被中断的位置继续执行。由于中断的存在极大的提高了CPU的运行效率,但是设备的中断会打断内核进程中的正常调度和运行,系统对更高吞吐率的追求势必要求中断服务程序尽量短小精悍。 为保证系统实时性,中断服务程序必须足够简短,但实际应用中某些时候
分布式概念
分布式计算是计算机科学中一个研究方向,它研究如何把一个需要非常巨大的计算能力才能
解决
的问题分成许多小的部分,然后把这些部分分配给多个计算机进行处理,最后把这些计算结果综合起来得到最终的结果。分布式网络存储技术是将数据分散地存储于多台独立的机器设备上。分布式网络存储系统采用可扩展的系统
结构
,利用多台存储服务器分担存储负荷,利用位置服务器定位存储信息,不但
解决
了传统集中式存储系统中单存储服务器的瓶颈问题,还提高了系统的可靠性、可用性和扩展性。
Linux 中断实验
中断是指 CPU在执行程序的过程中,出现了某些突发事件
急待
处理,CPU必须暂停当前程序的执行,转去处理突发事件,处理完毕后又返回原程序被中断的位置继续执行。由于中断的存在极大的提高了 CPU 的运行效率,但是设备的中断会打断内核进程中的正常调度和运行,系统对更高吞吐率的追求势必要求中断服务程序尽量短小精悍。举例来说,我现在正在厨房做饭,突然电话响了,然后我关火去接电话,接完电话在回去开火继续做饭,这个过程就是中断的一个过程。
C#
110,533
社区成员
642,574
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章