private XmlDocument xmlDoc;

//load xml file
        private void LoadXml()
        {
            xmlDoc=new XmlDocument();
            xmlDoc.Load( Server .MapPath("User.xml"));
        }

//添加节点
        private void AddElement()
        {
           
            LoadXml();

XmlNode xmldocSelect=xmlDoc.SelectSingleNode("user");
           
            XmlElement el=xmlDoc.CreateElement("person"); //添加person节点
            el.SetAttribute("name"," 风云 "); //添加person节点的属性"name"
            el.SetAttribute("sex","女");   //添加person节点的属性 "sex"
            el.SetAttribute("age","25");   //添加person节点的属性 "age"
           
             XmlElement xesub1=xmlDoc.CreateElement("pass"); //添加person节点的里的节点
             xesub1.InnerText="123";//设置文本节点
             el.AppendChild(xesub1);
             XmlElement xesub2=xmlDoc.CreateElement("Address");
             xesub2.InnerText="昆明";//设置文本节点
             el.AppendChild(xesub2);

xmldocSelect.AppendChild(el);
            xmlDoc.Save(Server.MapPath("user.xml"));

}

//修改节点
        private void UpdateElement()
        {
            LoadXml();
            XmlNodeList nodeList=xmlDoc.SelectSingleNode("user").ChildNodes;//获取bookstore节点的所有子节点
            foreach(XmlNode xn in nodeList)//遍历所有子节点
            {
                XmlElement xe=(XmlElement)xn;//将子节点类型转换为XmlElement类型
                if(xe.GetAttribute("name")=="风云")//如果name属性值为“风云”
                {
                    xe.SetAttribute("name","发明");

//如果下面有子节点在下走
                     XmlNodeList nls=xe.ChildNodes;//继续获取xe子节点的所有子节点
                    foreach(XmlNode xn1 in nls)//遍历
                    {
                       XmlElement xe2=(XmlElement)xn1;//转换类型
                        if(xe2.Name=="pass")//如果找到
                        {
                            xe2.InnerText="66666";//则修改
                            break;

}
                    }

break;
                }
            }
           xmlDoc.Save(Server.MapPath("user.xml"));// 保存
        }

//删出节点
        private void deleteNode()
        {
           
            LoadXml();
            XmlNodeList xnl=xmlDoc.SelectSingleNode("user").ChildNodes;
 
            foreach(XmlNode xn in xnl)
            {
                XmlElement xe=(XmlElement)xn;
               
                if(xe.GetAttribute("name")=="发明")
                {
                    //xe.RemoveAttribute("name");//删除name属性
                    xe.RemoveAll();//删除该节点的 全部 内容

break;
                }
               
            }
            xmlDoc.Save(Server.MapPath("user.xml"));//保存
        }

private void showIt()
        {
            LoadXml();
            XmlNode xn=xmlDoc.SelectSingleNode("user");
 
            XmlNodeList xnl=xn.ChildNodes;
  
            foreach(XmlNode xnf in xnl)
            {
                XmlElement xe=(XmlElement)xnf;
//                Console.WriteLine(xe.GetAttribute("name"));//显示属性值
//                Console.WriteLine(xe.GetAttribute("sex"));
//
//                XmlNodeList xnf1=xe.ChildNodes;
//                foreach(XmlNode xn2 in xnf1)
//                {
//                    Console.WriteLine(xn2.InnerText);//显示子节点点文本
//                }

}

}
   
Xml的样式:
<?xml version="1.0" encoding="gb2312"?>
<user>
  <person>
  </person>
  <person name="风拉" sex="男" age="25">
    <pass>123</pass>
    <Address>大明</Address>
  </person>
  <person name="风云" sex="女" age="25">
    <pass>123</pass>
    <Address>昆明</Address>
  </person>
</user>

XmlDocument使用相关推荐

  1. C#用XmlDocument操作XML

    1.加载xml文件 string xmlPath = AppDomain.CurrentDomain.BaseDirectory+"xml/test.xml";    XmlDoc ...

  2. 通过XmlDocument读写Xml文档(转)

    通过XmlDocument读写Xml文档 有如下一段Xml: view sourceprint?<?xml version="1.0" encoding="utf- ...

  3. (转)C#操作XML的完整例子——XmlDocument篇

    这是一个用c#控制台程序下, 用XmlDocument 进行XML操作的的例子,包含了查询.增加.修改.删除.保存的基本操作.较完整的描述了一个XML的整个操作流程.适合刚入门.net XML操作的朋 ...

  4. (转)使用XmlDocument类完成对XML的查、删、添、改

    前台HTML代码  1<%@ Page language="c#" Codebehind="xdoc.aspx.cs" AutoEventWireup=& ...

  5. c# xml的增删改查操作 xmlDocument 的用法

    1.将xml转换为DataTable string path = "";//xml的位置 StringReader sr = null; XmlTextReader xmlRead ...

  6. C#XmlDocument无法读取utf-16文件

    使用 XmlDocument.Load(path); 方法来读取一个encoding为utf-16的xml时,就报了以上异常. Xml文件: [html] view plaincopy print? ...

  7. c# streamReader转XmlDocument读取节点

    http获得web(url)请求,先是获得数据流streamreader,之后将String数据流转换为xmldocument,之后xmlnode读取节点. // get the responseWe ...

  8. C#操作XmlDocument对象 报缺少根节点 一一道来

    C# 操作XmlDocument文档 1.第一步选择文件目录 string FileName=string.Empty; SaveFileDialog sfd=new SaveFileDialog() ...

  9. XmlDocument类

    XmlDocument类是.NET框架的DOC解析器.XmlDocument将XML视为树状结构,它装载XML文档,并在内存中构建该文档的树状结构.下面来看下XmlDocument提供了哪些功能. 一 ...

  10. C# 通过ImportNode AppendChild方法合并XmlDocument,XML转为DataTable

    C# 通过ImportNode AppendChild方法合并XmlDocument,XML转为DataTable var doc1 = new XmlDocument(); var doc2 = n ...

最新文章

  1. 在单块磁盘上安装2000和XP操作系统
  2. H3C交换机版本升级(图形化)
  3. python贪婪与非贪婪_python 贪婪 非贪婪 匹配
  4. 怎样判断网页是静态还是伪静态呢
  5. 用计算机画好看的图形,如何画一手漂亮的电脑效果图?技巧案例赏析!
  6. win10安装vmware tools + 无法拖拽文件解决
  7. java createcustomcursor,CustomCursor插件:自定义你的鼠标光标
  8. jQuery制作带有微信二维码扫描的页面返回顶部代码
  9. 微信小程之打卡小程序开发
  10. Ultra Fractal分形艺术作品——璀璨
  11. 搜pos不为了收单而收单,互联网是个神奇的动物
  12. 微信摇一摇抽奖的H5制作思路
  13. 机器学习:决策树的预剪枝和后剪枝
  14. 95---Python 直角坐标系下绘制双曲螺旋线
  15. Nuxt.js理解 开启SSR渲染(介绍)---00
  16. October 2006
  17. Cadence IC618使用
  18. PMP相位测量轮廓术基本原理介绍
  19. python最难的地方_最令人头疼的 Python 问题
  20. Cognos的下载地址分享

热门文章

  1. SNIPER: Efficient Multi-Scale Training解读
  2. Python实现画图软件功能
  3. 7-108 三角形判断
  4. RTCP Receiver Report(RR)相关
  5. 基于SQLSERVER--数据库表的修复
  6. UDS诊断系列介绍13-31服务
  7. CSS——网页的布局方式
  8. 深圳云计算培训:新手学习云计算的规划
  9. SelectObject和DeleteObject函数
  10. 【Java】设计Java程序,假设有50瓶饮料,喝完3个空瓶可以换一瓶饮料,依次类推,请问总共喝了多少瓶饮料?