目录: 

1.创建XML

  1)创建普通XML

  2)创建带属性的XML

2.追加XML

3.读取XML

  1)读取普通XML

  2)读取带属性的XML

4.修改属性的值

5.删除XML节点

作为一个小型的数据存储传递的工具——XML,大家肯定也不陌生,今天就关于XML的一些简单操作做些总结。

这些都是在控制台进行操作的·····

1.创建XML

1)创建普通XML

  1. static void Main(string[] args)
  2. {
  3. //通过代码来创建XML文档
  4. //1、引用命名空间
  5. //2、创建XML文档对象
  6. XmlDocument doc = new XmlDocument();
  7. //3、创建第一个行描述信息,并且添加到doc文档中
  8. XmlDeclaration dec = doc.CreateXmlDeclaration("1.0", "utf-8", null);
  9. doc.AppendChild(dec);
  10. //4、创建根节点
  11. XmlElement books = doc.CreateElement("Books");
  12. //将根节点添加到文档中
  13. doc.AppendChild(books);
  14.  
  15. //5、给根节点Books创建子节点
  16. XmlElement book1 = doc.CreateElement("Book");
  17. //将book添加到根节点
  18. books.AppendChild(book1);
  19. //6、给Book1添加子节点
  20. XmlElement name1 = doc.CreateElement("Name");
  21. name1.InnerText = "三国演义";
  22. book1.AppendChild(name1);
  23.  
  24. XmlElement price1 = doc.CreateElement("Price");
  25. price1.InnerText = "";
  26. book1.AppendChild(price1);
  27.  
  28. XmlElement des1 = doc.CreateElement("Des");
  29. des1.InnerText = "好看";
  30. book1.AppendChild(des1);
  31.  
  32. XmlElement book2 = doc.CreateElement("Book");
  33. books.AppendChild(book2);
  34.  
  35. XmlElement name2 = doc.CreateElement("Name");
  36. name2.InnerText = "西游记";
  37. book2.AppendChild(name2);
  38.  
  39. XmlElement price2= doc.CreateElement("Price");
  40. price2.InnerText = "";
  41. book2.AppendChild(price2);
  42.  
  43. XmlElement des2 = doc.CreateElement("Des");
  44. des2.InnerText = "还不错";
  45. book2.AppendChild(des2);
  46.  
  47. doc.Save("Books.xml");
  48. Console.WriteLine("保存成功");
  49. Console.ReadKey();
  50. }

根据代码写的,然后运行,就会得到我们想要的XML文档:

2)创建带属性的XML

  1. static void Main(string[] args)
  2. {
  3. XmlDocument doc = new XmlDocument();
  4. XmlDeclaration dec = doc.CreateXmlDeclaration("1.0", "utf-8","yes");
  5. doc.AppendChild(dec);
  6.  
  7. XmlElement order = doc.CreateElement("Order");
  8. doc.AppendChild(order);
  9.  
  10. XmlElement customerName = doc.CreateElement("CustomerName");
  11. customerName.InnerText = "张三";
  12. order.AppendChild(customerName);
  13.  
  14. XmlElement customerNumber = doc.CreateElement("CustomerNumber");
  15. customerNumber.InnerText = "";
  16. order.AppendChild(customerNumber);
  17.  
  18. XmlElement items = doc.CreateElement("Items");
  19. order.AppendChild(items);
  20.  
  21. XmlElement orderItem1 = doc.CreateElement("OrderItem");
  22. //给节点添加属性
  23. orderItem1.SetAttribute("Name", "单反");
  24. orderItem1.SetAttribute("Count", "");
  25. items.AppendChild(orderItem1);
  26.  
  27. XmlElement orderItem2 = doc.CreateElement("OrderItem");
  28. //给节点添加属性
  29. orderItem2.SetAttribute("Name", "书");
  30. orderItem2.SetAttribute("Count", "");
  31. items.AppendChild(orderItem2);
  32.  
  33. XmlElement orderItem3 = doc.CreateElement("OrderItem");
  34. //给节点添加属性
  35. orderItem3.SetAttribute("Name", "手机");
  36. orderItem3.SetAttribute("Count", "");
  37. items.AppendChild(orderItem3);
  38.  
  39. doc.Save("Order.xml");
  40. Console.WriteLine("保存成功");
  41. Console.ReadKey();
  42.  
  43. }

根据代码写的,然后运行,就会得到我们想要的XML文档:

2.追加XML

  1. static void Main(string[] args)
  2. {
  3. //追加XML文档
  4. XmlDocument doc = new XmlDocument();
  5. XmlElement books;
  6. if (File.Exists("Books.xml"))
  7. {
  8. //如果文件存在 加载XML
  9. doc.Load("Books.xml");
  10. //获得文件的根节点
  11. books = doc.DocumentElement;
  12. }
  13. else
  14. {
  15. //如果文件不存在
  16. //创建第一行
  17. XmlDeclaration dec = doc.CreateXmlDeclaration("1.0", "utf-8", null);
  18. doc.AppendChild(dec);
  19. //创建跟节点
  20. books = doc.CreateElement("Books");
  21. doc.AppendChild(books);
  22. }
  23. //5、给根节点Books创建子节点
  24. XmlElement book1 = doc.CreateElement("Book");
  25. //将book添加到根节点
  26. books.AppendChild(book1);
  27.  
  28. //6、给Book1添加子节点
  29. XmlElement name1 = doc.CreateElement("Name");
  30. name1.InnerText = "c#开发大全";
  31. book1.AppendChild(name1);
  32.  
  33. XmlElement price1 = doc.CreateElement("Price");
  34. price1.InnerText = "";
  35. book1.AppendChild(price1);
  36.  
  37. XmlElement des1 = doc.CreateElement("Des");
  38. des1.InnerText = "看不懂";
  39. book1.AppendChild(des1);
  40.  
  41. doc.Save("Books.xml");
  42. Console.WriteLine("保存成功");
  43. Console.ReadKey();
  44.  
  45. }

根据代码写的,然后运行,就会得到我们想要的XML文档:

3.读取XML

1)读取普通XML

  1. static void Main(string[] args)
  2. {
  3. XmlDocument doc = new XmlDocument();
  4. //加载要读取的XML
  5. doc.Load("Books.xml");
  6.  
  7. //获得根节点
  8. XmlElement books = doc.DocumentElement;
  9.  
  10. //获得子节点 返回节点的集合
  11. XmlNodeList xnl = books.ChildNodes;
  12.  
  13. foreach (XmlNode item in xnl)
  14. {
  15. Console.WriteLine(item.InnerText);
  16. }
  17. Console.ReadKey();
  18. }

根据代码写的,然后运行,就会得到读取的XML结果:

2)读取带属性的XML

  1. static void Main(string[] args)
  2. {
  3. //读取带属性的XML文档
  4.  
  5. XmlDocument doc = new XmlDocument();
  6. doc.Load("Order.xml");
  7. XmlNodeList xnl = doc.SelectNodes("/Order/Items/OrderItem");
  8. foreach (XmlNode node in xnl)
  9. {
  10. Console.WriteLine(node.Attributes["Name"].Value);
  11. Console.WriteLine(node.Attributes["Count"].Value);
  12. }
  13. Console.ReadKey();
  14. }

根据代码写的,然后运行,就会得到读取的XML结果:

4.修改属性的值

  1. static void Main(string[] args)
  2. {
  3. //改变属性的值
  4. XmlDocument doc = new XmlDocument();
  5. doc.Load("Order.xml");
  6. XmlNode xn = doc.SelectSingleNode("/Order/Items/OrderItem[@Name='单反']");
  7. xn.Attributes["Count"].Value = "";
  8. xn.Attributes["Name"].Value = "电脑";
  9. doc.Save("Order.xml");
  10. Console.WriteLine("保存成功");
  11.  
  12. Console.ReadKey();
  13. }

根据代码写的,然后运行,就会得到修改后的XML结果:

5.删除XML节点

  1. static void Main(string[] args)
  2. {
  3. XmlDocument doc = new XmlDocument();
  4. doc.Load("Order.xml");
  5. XmlNode xn = doc.SelectSingleNode("/Order/Items");
  6. xn.RemoveAll();
  7. doc.Save("Order.xml");
  8. Console.WriteLine("删除成功");
  9. Console.ReadKey();
  10. }

根据代码写的,然后运行,就会得到修删除后的XML结果:

至此:XML简单的增删改操作就结束了·····

C# 代码操作XML(增、删、改)的更多相关文章

  1. 【WPF学习笔记】之如何通过后台C#代码添加(增/删/改按钮)实现对SQLServer数据库数据的更改

    首先,需要连接SQLServer数据库的服务器名称server.数据库名database.数据库用户名uid以及密码pwd,如下图: 然后需要以下数据库SQL代码段,还有一个myHelper.cs代码 ...

  2. php5.4以上 mysqli 实例操作mysql 增,删,改,查

    <?php //php5.4以上 mysqli 实例操作mysql header("Content-type:text/html;charset=utf8"); $conn ...

  3. C# ADO.NET (sql语句连接方式)(增,删,改)

    using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.We ...

  4. [MySQL数据库之记录的详细操作:增、改、删、单表查询、多表查询]

    [MySQL数据库之记录的详细操作:增.改.删.单表查询.多表查询] 记录详细操作 增.删.改 增: insert t1(字段1,字段2,字段3) values (值1,值2,值3), (值1,值2, ...

  5. 好用的SQL TVP~~独家赠送[增-删-改-查]的例子

    以前总是追求新东西,发现基础才是最重要的,今年主要的目标是精通SQL查询和SQL性能优化.  本系列主要是针对T-SQL的总结. [T-SQL基础]01.单表查询-几道sql查询题 [T-SQL基础] ...

  6. iOS sqlite3 的基本使用(增 删 改 查)

    iOS sqlite3 的基本使用(增 删 改 查) 这篇博客不会讲述太多sql语言,目的重在实现sqlite3的一些基本操作. 例:增 删 改 查 如果想了解更多的sql语言可以利用强大的互联网. ...

  7. django ajax增 删 改 查

    具于django ajax实现增 删 改 查功能 代码示例: 代码: urls.py from django.conf.urls import url from django.contrib impo ...

  8. iOS FMDB的使用(增,删,改,查,sqlite存取图片)

    iOS FMDB的使用(增,删,改,查,sqlite存取图片) 在上一篇博客我对sqlite的基本使用进行了详细介绍... 但是在实际开发中原生使用的频率是很少的... 这篇博客我将会较全面的介绍FM ...

  9. ADO.NET 增 删 改 查

    ADO.NET:(数据访问技术)就是将C#和MSSQL连接起来的一个纽带 可以通过ADO.NET将内存中的临时数据写入到数据库中 也可以将数据库中的数据提取到内存中供程序调用 ADO.NET所有数据访 ...

随机推荐

  1. 北京Uber优步司机奖励政策(2月1日)

    滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万/不用抢单:http://www.cnblogs.com/mfry ...

  2. Netty示例

    一,服务端 ** * 测试Netty类库:服务端代码 * Created by LiuHuiChao on 2016/10/24. */ public class NettyServerTest { ...

  3. kalibr论文阅读笔记

    单目相机IMU标定 该论文将相机IMU标定分为两个大方面: 一. 使用基函数来估计时间偏差 二. 相机和IMU的空间位置转换 校准变量:重力.外参旋转和平移.时钟偏移.IMU位姿.加速度计偏置.陀螺仪 ...

  4. element-ui 分页注意事项

    <template> <div id="monitor"> 一页显示 {{currentCount}}条 当前第 {{currentPage}}页 < ...

  5. javasript 字符串 数组操作

    Javascript中经常涉及到对字符串和数组的处理,今天总结一下具体的用法 一 操作字符串 String对象有很多函数,可以以不同的方式访问和操作字符串,具体方法如下:   charAt(index ...

  6. WEB中间件漏洞--IIS

    1.iis安装 版本 一直下一步,选上iis安装 端口修改 网站目录 通过网站发布目录(发布目录任意),新建index.html页面,可以正常访问 2.iis6.0解析漏洞 (1)文件名解析 IIS在 ...

  7. Linux命令应用大词典-第22章 GRUB

    22.1 grub-md5-crypt:使用MD5格式加密口令 22.2 grub-install:在设备上安装GRUB 22.3 grub:进入GRUB命令shell 22.4 grub-crypt ...

  8. 第五模块·WEB开发基础-第2章JavaScript基础

    第1章 JavaScript基础 01-JavaScript历史介绍 02-JavaScript的组成 03-JavaScript的引入方式 04-变量的使用 05-基本数据类型(一) 06-基本数据 ...

  9. Java注解的基本原理

    注解的本质就是一个继承了Annotation接口的接口,一个注解准确意义上来说,只不过是一种特殊注释而已,如果没有解析他的代码,他可能连注释都不如. 解析一个类或者方法的注解往往有两种形式,一种是编译 ...

  10. WCF服务库创建-20140919

    1. 创建wcf服务库 2. 宿主到web程序上 // 宿主wcf服务库 RouteTable.Routes.Add(new ServiceRoute("ctserver.dll" ...