XmlDocument xmlDoc;
            xmlDoc = new XmlDocument();
            xmlDoc.Load(Application.StartupPath+"\\pointConfig.xml");
            XmlNode xmldocSelect = xmlDoc.SelectSingleNode("root");//xml文件的根结点是user
            xmldocSelect = xmldocSelect.SelectNodes("pointList")[0];
            XmlElement el = xmlDoc.CreateElement("point");//添加person节点
            el.SetAttribute("index", "1");//添加属性名,及属性值
            el.SetAttribute("trackNo", "1");

XmlElement xesub1 = xmlDoc.CreateElement("arriveTime");
            xesub1.InnerText = "2012-05-05 13:05:00";
            el.AppendChild(xesub1);
            XmlElement xesub2 = xmlDoc.CreateElement("lat");
            xesub2.InnerText = "133";
            el.AppendChild(xesub2);
            XmlElement xesub3 = xmlDoc.CreateElement("lon");
            xesub3.InnerText = "39";
            el.AppendChild(xesub3);
            XmlElement xesub4 = xmlDoc.CreateElement("ico");
            xesub4.SetAttribute("defaultDisply", "true");
            xesub4.InnerText = @"http://localhost/a.gif";
            el.AppendChild(xesub4);

XmlElement xesub5 = xmlDoc.CreateElement("text");
            xesub5.InnerText = "cccc";
            xesub5.SetAttribute("defaultDisply", "true");
            el.AppendChild(xesub5);
            XmlElement xesub6 = xmlDoc.CreateElement("tag");
            xesub6.SetAttribute("action", "click");

el.AppendChild(xesub4);
            XmlElement e2 = (XmlElement)el.Clone();
            e2.SelectNodes("lon")[0].InnerText="134";
            e2.SetAttribute("index", "2");
            xmldocSelect.AppendChild(el);//将节点person加到根结点xmldocSelect下
            xmldocSelect.AppendChild(e2);
            xmlDoc.Save("trytry.xml");//保存,这个十分重要,否则没有数据

private XmlDataDocument xmlDoc;//声明全局变量xmlDoc,类型是XmlDataDocument
     protected void Page_Load(object sender, EventArgs e)
     {
 
    }
 
//声明加载xml文件的方法
     private void xmlLoad()
     {
         xmlDoc = new XmlDataDocument();
         xmlDoc.Load(Server.MapPath("trytry.xml"));//文件名是trytry.xml
     }
 
//点击添加按钮,添加数据
     protected void ButtonAdd_Click(object sender, EventArgs e)
     {
         xmlLoad();//调用加载xml文件的方法
         XmlNode xmldocSelect = xmlDoc.SelectSingleNode("user");//xml文件的根结点是user
 
        XmlElement el = xmlDoc.CreateElement ("person");//添加person节点
         el.SetAttribute("name", "云云");//添加属性名,及属性值
         el.SetAttribute("sex", "女");
         el.SetAttribute("age", "25");
 
        XmlElement xesub1 = xmlDoc.CreateElement("pass");//添加person节点的子节点
         xesub1.InnerText = "123";//节点pass下的值是123
         el.AppendChild(xesub1);//将节点pass添加到父节点person下
         XmlElement xesub2 = xmlDoc.CreateElement("address");
         xesub2.InnerText = "中国西安";
         el.AppendChild(xesub2);
 
        xmldocSelect.AppendChild(el);//将节点person加到根结点xmldocSelect下
         xmlDoc.Save(Server.MapPath("trytry.xml"));//保存,这个十分重要,否则没有数据
 
    }
 
//点击修改按钮,修改数据
     protected void ButtonUpdata_Click(object sender, EventArgs e)
     {
         xmlLoad();//调用加载xml文件的方法
         XmlNodeList list = xmlDoc.SelectSingleNode("user").ChildNodes;//获得根节点user下的所有子节点
 
 
 
//遍历所有子节点
 
        foreach (XmlNode node in list)
         {
             XmlElement xe = (XmlElement)node;//把节点node转换成XmlElement型
             if (xe.GetAttribute("name") == "云云")//如果节点的属性name的值是"云云"
             {
                 xe.SetAttribute("name","哈哈");//把节点的name属性改为"哈哈"
             }
             XmlNodeList sublist = xe.ChildNodes;//再获得该节点的子节点
             foreach (XmlNode subnode in sublist)
             {
                 XmlElement subxe = (XmlElement)subnode ;
                 if (subxe.Name == "address")//如果节点是"address"
                 {
                     if (subxe.InnerText == "中国西安")//如果该节点下的值是"中国西安"
                         subxe.InnerText = "中国三河";
                     break;
                 }
             }
         }
         xmlDoc.Save(Server.MapPath("trytry.xml"));
     }
 
//点击删除按钮,删除数据
     protected void ButtonDele_Click(object sender, EventArgs e)
     {
         xmlLoad();
         XmlNodeList list = xmlDoc.SelectSingleNode("user").ChildNodes;
         foreach (XmlNode node in list)
         {
             XmlElement xe = (XmlElement)node;
             if (xe.GetAttribute("name") == "哈哈")
             {
                 xe.RemoveAttribute("name");//删除属性
             }
             else
                 xe.RemoveAll();//删除节点
         }
 
        xmlDoc.Save(Server.MapPath("trytry.xml"));
      
     }

xml中的常用操作示例相关推荐

  1. java 操作oracle 源码_java对oracle的常用操作示例源码

    将做工程过程重要的代码片段做个收藏,下面资料是关于java对oracle的常用操作示例的代码. import java.sql.Connection; import java.sql.DriverMa ...

  2. Lambda 表达式的常用操作示例

    文章目录 一.示例对象 二.常用操作 一.示例对象 User 对象 @AllArgsConstructor @Data @ToString public class User implements S ...

  3. MYSQL 中 SQL 常用操作

    SQL常用操作大全 1.SQL简单的操作 -- 常见SQL-- 查询 SELECT id,username,password FROM admin;-- 插入 INSERT INTO admin(us ...

  4. python读取excelsheet-python实现读取excel文件中所有sheet操作示例

    本文实例讲述了python实现读取excel文件中所有sheet操作.分享给大家供大家参考,具体如下: 表格是这样的 实现把此文件所有sheet中 标识为1 的行,取出来,存入一个字典.所有行组成一个 ...

  5. php实现电子签名,php实现往pdf中加数字签名操作示例【附源码下载】

    本文实例讲述了php实现往pdf中加数字签名操作.分享给大家供大家参考,具体如下: //======================================================== ...

  6. python 读excel中的sheet_python实现读取excel文件中所有sheet操作示例

    本文实例讲述了python实现读取excel文件中所有sheet操作.分享给大家供大家参考,具体如下: 表格是这样的 实现把此文件所有sheet中 标识为1 的行,取出来,存入一个字典.所有行组成一个 ...

  7. iOS中模拟器常用操作

    模拟器常用操作 1.选取设备 2.旋转设备 3.返回首页 4.锁定 5.模拟内存警告 6.呼叫状态栏目 7.拷贝屏幕以及屏幕快照 8.模拟器常用快捷键总结 1.  command +  <- 2 ...

  8. pom.xml中的常用依赖包总结

    pom.xml是maven项目中的一个很重要的文件,很多依赖都在这个文件中配置. pom.xml依赖的配置主要分为: 两大依赖:1.模块依赖:2.框架依赖 三个部分:1.对于项目本身模块的依赖:2:对 ...

  9. Shell中的常用操作

    文章目录 1 读取从键盘输入的数据 2 退出当前进程 3 对整数进行数学运算 4 逻辑与和或 5 检测某个条件是否成立 1 读取从键盘输入的数据 我们可以使用read进行读取,示例如下: read - ...

最新文章

  1. 2.MyBatis 动态SQL
  2. wpf 加载本地html文件,c# – Wpf WebBrowser加载javascript
  3. 从Google PR值审定标准来学习如何做推广
  4. struts2漏洞监测_CVE20190233: S2060 拒绝服务漏洞分析
  5. android 开发中java.lang.verifyerror问题
  6. 洛谷——P1219 八皇后
  7. Python源码阅读-内存管理机制(一)
  8. 【CEOI2017】Building Bridges【任意坐标斜率优化】【李超线段树】
  9. 警惕“***性社工”现象
  10. 《Reids 设计与实现》第十九章 慢查询日志
  11. neo4j安装与示例
  12. java jmx教程_【JAVA】JMX简单使用方法
  13. 从VC++ 6.0 MSDEV到Visual Studio 2017的过渡阶段
  14. SVN客户端安装与常用操作(超详细)
  15. JavaWeb Tomcat原理理解
  16. 性能监视器 Performance Monitor-对SQLSERVER进行性能监控
  17. c++ fbxsdk安装配置_Linux上安装软件 - coydone
  18. MacOS升级Big Sur后32位锐捷客户端排坑历程
  19. java用ffmpeg获取音频信息及转化音频采样率、比特率、声道数量、格式
  20. Python保留指定位数的小数

热门文章

  1. windows之实现3D立体效果的三种方法
  2. Windows中CMD启动应用
  3. mysql命令行的一些小技巧
  4. 奥运开幕了 您给开幕式和火炬点火仪式打几分?
  5. 【蓝桥杯-第五届】 啤酒和饮料
  6. poj 2397(二分+dp)
  7. Python多线程详解
  8. 排序算法-- 大总结
  9. 你必须了解的反射——反射来实现实体验证
  10. (转)Docker volume plugin - enabled create local volume on docker host