C#向XML中添加资料的方法
主要3种方法
DataSet.ReadXML 操作方便
XMLDocument 操作方便
XMLReader,XMLWriter 操作复杂 效率最高
使用XmlDocument是最简单的,不过效率不高,
使用XmlReader和XmlWriter处理效率比较高,不过不够灵活,实现相对复杂。
使用DataSet或DataTable只是一种投机取巧的方式,不适合于复杂的Xml文档。
_xmlD = new XmlDocument();
_xmlD.Load(@"D:/Project/20080303-01/20080303-01/CSDN.xml");
XmlElement _xe = _xmlD.CreateElement("User");
//得到最上面的结点类似顶级结点
XmlNode _topxn = _xmlD.SelectSingleNode("dbGuest");
XmlElement _xeName = _xmlD.CreateElement("Name");
_xeName.InnerText=(this.txtNewName.Text !="")?this.txtNewName.Text:"Kevin";
XmlAttribute _xmlA = _xmlD.CreateAttribute("Writer");
_xmlA.InnerText = "Kevin";
_xeName.Attributes.Append(_xmlA);
_xe.AppendChild(_xeName);
XmlElement _xeCity = _xmlD.CreateElement("City");
_xeCity.InnerText =(this.txtNewCity.Text !="")?this.txtNewCity.Text:"Xiamen";
_xe.AppendChild(_xeCity);
XmlElement _xeEmail = _xmlD.CreateElement("Email");
_xeEmail.InnerText =(this.txtNewEmail.Text !="")?this.txtNewEmail.Text:"zzyhuian@163.com";
_xe.AppendChild(_xeEmail);
XmlElement _xeTime = _xmlD.CreateElement("Time");
_xeTime.InnerText = DateTime.Now.ToString();
_xe.AppendChild(_xeTime);
_topxn.AppendChild(_xe);
_xmlD.Save(@"D:/Project/20080303-01/20080303-01/Kevin.xml");
MessageBox.Show("子结点添加成功!");
XmlDocument doc = new XmlDocument();
doc.LoadXml(
"<?xml version=/"1.0/" encoding=/"utf-8/" ?>" +
"<root>" +
" <name> King of Kings </name>" +
"</root>");
XmlElement idElement = doc.CreateElement("id"); //
idElement.AppendChild(doc.CreateTextNode("Alex")); //
doc.SelectSingleNode("root").AppendChild(idElement); //
MessageBox.Show( doc.OuterXml );
using System;
using System.IO;
using System.Text;
using System.Diagnostics;
using System.Threading;
using System.Collections;
using System.Data;
using System.Xml;
using System.Management;
using System.Net;
namespace Zhzuo
{
class ZZConsole
{
[STAThread]
static void Main(string[] args)
{
string strXml=" "
+" "
+"
"
+" 1111 "
+" 2222 "
+" 2004 "
+" 20040302 "
+" "
+" "
+" "
+" 01 "
+" 深圳 "
+" 0 "
+" 110258740824082 "
+" "
+" ";
XmlDocument doc = new XmlDocument();
doc.LoadXml(strXml);
string vv;
XmlNodeList myNodes = doc.GetElementsByTagName("Version");
vv = myNodes[0].InnerText;
//修改
myNodes[0].InnerText = "123455";
Console.WriteLine(vv);
myNodes = doc.SelectNodes("//Version");
vv = myNodes[0].InnerText;
Console.WriteLine(vv);
//修改
myNodes[0].InnerText = "67890";
doc.Save("d://text.xml");
Console.ReadLine();
}
}
}
本文介绍了使用C#语言向XML文件添加数据的三种方法:利用XmlDocument进行简单操作,使用XmlReader与XmlWriter实现高效处理,以及通过DataSet适用于特定场景。示例代码展示了如何创建XML元素、属性及文本节点,并保存到文件。
9475

被折叠的 条评论
为什么被折叠?



