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");
<?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");
相关文章推荐
- 如何管理和记录 SSIS 各个 Task 的开始执行时间和结束时间以及 Task 中添加|删除|修改的记录数
- 如何修改表的ID主键 使的在删除了一些记录后把新增的记录插入到删除记录的位置
- 记录的添加,修改,删除等操作,??
- XML删除按钮,修改并保存按钮 和 添加按钮。完成这些按钮所对应的功能(XmlDocument)。
- 如何修改删除邮件记录(MX记录)
- Windows 如何在cmd命令行中查看、修改、删除与添加环境变量
- java操作sql server数据添加,修改,删除记录
- 在shuiguo.xml文件中第三个水果中的苹果节点中添加节点<小苹果>small apple</小苹果>,添加小苹果后将其文本内容修改为“小苹果”,修改该节点后将其父节点苹果(即第三个苹果元素)删除
- php中DOMDocument简单用法示例代码(XML创建、添加、删除、修改)
- C# 生成 添加 修改 删除 XML节点操作
- js添加、修改、删除xml节点例子
- C# 添加,修改,删除Xml节点
- C# XML 添加,修改,删除Xml节点
- 如何在cmd命令行中查看、修改、删除与添加环境变量
- C# 添加,修改,删除Xml节点
- 详解SimpleXML添加_修改_删除_遍历XML节点属性
- php中DOMDocument简单用法(XML创建、添加、删除、修改)
- supermap、cesium如何操作entity,添加删除修改等
- 在windows下如何添加、删除和修改静态路由
- C# XML 添加,修改,删除Xml节点