内容简介:翻译自:https://stackoverflow.com/questions/849043/fastest-way-to-add-new-node-to-end-of-an-xml
我有一个大的xml文件(大约10 MB)以下简单的结构:
<Errors> <Error>.......</Error> <Error>.......</Error> <Error>.......</Error> <Error>.......</Error> <Error>.......</Error> </Errors>
我需要写一个新节点<Error>在</ Errors>之前的末尾标签.什么是在.net中实现这一目标的最快方法?
您需要使用XML包含技术.
你的error.xml(不会改变,只是一个存根.由XML解析器用来读取):
<?xml version="1.0"?> <!DOCTYPE logfile [ <!ENTITY logrows SYSTEM "errorrows.txt"> ]> <Errors> &logrows; </Errors>
你的errorsrows.txt文件(更改,xml解析器不理解它):
<Error>....</Error> <Error>....</Error> <Error>....</Error>
然后,向errorsrows.txt添加一个条目:
using (StreamWriter sw = File.AppendText("logerrors.txt")) { XmlTextWriter xtw = new XmlTextWriter(sw); xtw.WriteStartElement("Error"); // ... write error messge here xtw.Close(); }
或者您甚至可以使用.NET 3.5 XElement,并将文本附加到StreamWriter:
using (StreamWriter sw = File.AppendText("logerrors.txt")) { XElement element = new XElement("Error"); // ... write error messge here sw.WriteLine(element.ToString()); }
另见 Microsoft’s article Efficient Techniques for Modifying Large XML Files
翻译自:https://stackoverflow.com/questions/849043/fastest-way-to-add-new-node-to-end-of-an-xml
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- 你知道几种继承方式?(结尾有彩蛋)
- Vue2.0 + ElementUI 手写权限管理系统后台模板(四)——组件结尾
- 火星晨报0117:Grin首秀,日间最高涨幅800%;ETC 51%双花攻击戏剧性结尾:黑客归还全部所得ETC
- xml创建节点(根节点、子节点)
- Vultr VPS 节点选择方法 | 各节点延迟一览
- 1.19 JQuery2:节点插入与节点选取
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
UNIX网络编程 卷1:套接字联网API(第3版)
[美]W. 理查德•史蒂文斯(W. Richard Stevens)、比尔• 芬纳(Bill Fenner)、安德鲁 M. 鲁道夫(Andrew M. Rudoff) / 匿名 / 人民邮电出版社 / 2014-6-1 / 129.00
《UNIX环境高级编程(第3版)》是被誉为UNIX编程“圣经”的Advanced Programming in the UNIX Environment一书的第3版。在本书第2版出版后的8年中,UNIX行业发生了巨大的变化,特别是影响UNIX编程接口的有关标准变化很大。本书在保持前一版风格的基础上,根据最新的标准对内容进行了修订和增补,反映了最新的技术发展。书中除了介绍UNIX文件和目录、标准I/......一起来看看 《UNIX网络编程 卷1:套接字联网API(第3版)》 这本书的介绍吧!