您的位置:首页 > 编程语言 > C#

C#如何[添加][删除][修改]XML中的记录

2009-02-20 08:47 591 查看
XML:如下

<?xml version="1.0" encoding="utf-8" ?>

<NEWDATA>

<DATA>

<ID>1</ID>

<NAME>user1</NAME>

<Explain><![CDATA[此处添加说明...]]></Explain>

</DATA>

<ID>2</ID>

<NAME>user2</NAME>

<Explain><![CDATA[此处添加说明...]]></Explain>

</DATA>

<NEWDATA>

问题:

1)[删除]<ID>1</ID>的记录并保存

2)[修改]]<ID>2</ID>记录的

<Explain><![CDATA[此处添加说明...]]></Explain>

为<Explain><![CDATA[生日:1978-5-8 姓名:哈哈]]></Explain>并保存

3)我要[添加]一个

<DATA>

<ID>3</ID>

<NAME>user3</NAME>

<Explain><![CDATA[生日: 1977-5-8 姓名:FlashApp]]></Explain>

</DATA>

的记录并保存

-------------实现代码如下-------------

XmlDocument xmldoc ;

XmlNode xmlnode ;

XmlElement xmlelem ;

XmlElement xmlelem1 ;

XmlText xmltext ;

XmlTextWriter XMLWriter;

//添加节点

//初始化

xmldoc = new XmlDocument ();

xmldoc.Load ("Data.xml");

xmlnode = xmldoc.DocumentElement;

//添加一个名为DATA的子节点

xmlelem = xmldoc.CreateElement ("DATA") ;

//此子节点下的元素

xmlelem1 = xmldoc.CreateElement ("ID") ;

xmltext = xmldoc.CreateTextNode ("3") ;

xmlelem1.AppendChild ( xmltext ) ;

xmlelem.AppendChild ( xmlelem1 ) ;

xmlelem1 = xmldoc.CreateElement ("NAME") ;

xmltext = xmldoc.CreateTextNode ("user3") ;

xmlelem1.AppendChild ( xmltext ) ;

xmlelem.AppendChild ( xmlelem1 ) ;

xmlelem1 = xmldoc.CreateElement ("Explain") ;

xmltext = xmldoc.CreateTextNode ("><![CDATA[生日: 1977-5-8 姓名:FlashApp]]>") ;

xmlelem1.AppendChild ( xmltext ) ;

xmlelem.AppendChild ( xmlelem1 ) ;

//结束此子节点

xmldoc.DocumentElement.AppendChild(xmlelem);

//保存

xmldoc.Save("Data.xml");

//删除节点

XmlDataDocument dom=new XmlDataDocument();

dom.Load ("Data.xml");

XmlElement root = dom.DocumentElement;

XmlNode node = root.SelectSingleNode("//DATA[MID=1]"); //查找要删除的节点

if(node != null)//找到了,将其删除

{

node.RemoveAll();

}

//保存

dom.Save("Data.xml");

//修改就更容易了

代码同上,找到要修改的节点后

if(node != null)

{

node["Explain"].InnerText = "<![CDATA[生日:1978-5-8 姓名:哈哈]]>"

}

//保存

dom.Save("Data.xml");
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: