在C#里利用XML进行数据读写以及修改
来源:互联网 发布:大学生网络惨案 编辑:程序博客网 时间:2024/06/05 11:15
<pre name="code" class="html"><?xml version="1.0" encoding="utf-8"?><root> <group1> <item/> <item/> <item/> </group1> <group2> </group2></root>
首先来用C#进行建立含有以上内容的xml文档,保存在程序同目录下的"data.xml"里
注意,在xml里节点(Node)的意义是 "<xxx/>"或者"<xxx> xxx </xxx>",也就是说,是一个整体。
而元素(Element)的意义与节点有交集,但不等于节点,可以是是构成节点的几个元素,比如<aaa>是Element,而结尾的</aaa>叫做EndElement。
using System.Xml;XmlDocument xmlDoc = new XmlDocument();//声明XmlDeclaration dec = xmlDoc.CreateXmlDeclaration("1.0", "utf-8", null);xmlDoc.AppendChild(dec);//XmlElement root = xmlDoc.CreateElement("root");XmlElement group_1 = xmlDoc.CreateElement("group1");XmlElement group_2 = xmlDoc.CreateElement("group2");XmlElement item_1 = xmlDoc.CreateElement("item"); XmlElement item_2 = xmlDoc.CreateElement("item");XmlElement item_3 = xmlDoc.CreateElement("item");//group_1.AppendChild(item_1);group_1.AppendChild(item_2);group_1.AppendChild(item_3);root.AppendChild(group_1);root.AppendChild(group_2); xmlDoc.AppendChild(root);xmlDoc.Save("data.xml");
接下来,在root//group2中添加一个Name == "student"的元素
使其有自己的属性(Attribute) :id = "20051200",同时在innerText中添加"WPF"
<?xml version="1.0" encoding="utf-8"?><root> <group1> <item/> <item/> <item/> </group1> <group2> <student id="20051200">WPF</student> </group2></root>C#代码如下:
XmlDocument doc = new XmlDocument();doc.Load("data.xml");XmlNode root = doc.SelectSingleNode("root//group2");//root指向root//group2//设置元素的内容XmlElement stu = doc.CreateElement("student");stu.SetAttribute("id", "20051200");stu.InnerText = "WPF";//添加到root//group2下,保存root.AppendChild(stu);doc.Save("data.xml")
接下来将root//group1中的item的innerText添加上字符串"aaa",即
<pre name="code" class="html"><?xml version="1.0" encoding="utf-8"?><root> <group1> <item>aaa</item> <item>aaa</item> <item>aaa</item> </group1> <group2> <student id="20051200">WPF</student> </group2></root>
C#代码如下:
XmlDocument doc = new XmlDocument();doc.Load("data.xml");XmlNode root = doc.SelectSingleNode("root//group1");//root指向root//group1XmlNodeList nodelist = root.ChildNodes;foreach (XmlNode t in nodelist){ t.innerText = "aaa";}doc.Save("data.xml")
接下来讨论删除子节点的问题,
分别用remove()和removeAll()
将group1,2里的节点全部删除,即
<?xml version="1.0" encoding="utf-8"?><root> <group1> </group1> <group2> </group2></root>C#:
//删除root//gruop2//studentXmlDocument doc = new XmlDocument();doc.Load("data.xml");XmlNode node = doc.SelectSingleNode("root//group2//student");XmlNode parent = doc.SelectSingleNode("root//group2");parent.RemoveChild(node);doc.Save("1.xml");//删除root//group1中的所有节点XmlDocument doc = new XmlDocument();doc.Load("data.xml");XmlNode node = doc.SelectSingleNode("root//group1");node.RemoveAll();doc.Save("1.xml");
想要取出存储的一些属性也是比较方便的,通常可以把一些字符串存在innerText中
假如在做删除操作之前,我要取出student中的"WPF",打印在控制台上
XmlDocument doc = new XmlDocument();doc.Load("data.xml");XmlNode node = doc.SelectSingleNode("root//group2//student");string str = node.innerText;Console.WriteLine(str);doc.Save("1.xml");
如果要批量操作,可以参照上面提到的删除item操作一样,将一组node装入XmlNodeList里,用foreach操作。
0 0
- 在C#里利用XML进行数据读写以及修改
- unity里利用C# 读写XML
- unity里利用C# 读写XML
- unity里利用C# 读写XML
- 【Unity】(代码分析)unity里利用C# 读写XML
- 怎样在C#里对xml文件进行修改,新增,删除,插入操作?
- 怎样在C#里对xml文件进行修改,新增,删除,插入操作?
- 转载:怎样在C#里对xml文件进行修改,新增,删除,插入操作?
- 在C#里对xml文件进行修改,新增,删除,插入操作
- 怎样在C#里对xml文件进行修改,新增,删除,插入操作?
- C# 里XML文件读写
- unity利用c#读写xml
- C#里对xml文件进行修改,新增,删除,插入操作
- 利用ElementTree对xml进行修改
- 在Unity3D中使用C#如何进行XML文件的读写
- 在Unity3D中使用C#如何进行XML文件的读写
- 909422229__利用dom4j修改XML数据_进行增删改查【最新】
- C#与java利用XML进行通信
- 将yuyv格式图像转为IplImage(彩色)
- 黑马程序员_java基础之集合(collection及其子类)
- java生成数字证书(二、私钥数字证书)
- OpenStack的私有云解决方案
- java基础---封装、继承、多态
- 在C#里利用XML进行数据读写以及修改
- P122.20
- 二分查找
- Swift - 属性 - 属性监视器(didSet、willSet)
- 主要学习类型之间的转换
- 最小生成树
- acm算法之c++标准库及命名空间std
- Android开发巩固学习路线
- 喜羊羊系列之【arm和Linux运行平台相互切换】