这篇文章主要为大家详细介绍了C# 代码操作XML进行增、删、改操作,感兴趣的小伙伴们可以参考一下
这篇文章主要为大家详细介绍了C# 代码操作XML进行增、删、改操作,感兴趣的小伙伴们可以参考一下
这篇文章主要为大家详细介绍了C# 代码操作XML进行增、删、改操作,感兴趣的小伙伴们可以参考一下
作为一个小型的数据存储传递的工具——xml,大家肯定也不陌生,今天就关于xml的一些简单操作做些总结。
这些都是在控制台进行操作的·····
1.创建xml
1)创建普通xml
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
|
static void main(string[] args) { //通过代码来创建xml文档 //1、引用命名空间 //2、创建xml文档对象 xmldocument doc = new xmldocument(); //3、创建第一个行描述信息,并且添加到doc文档中 xmldeclaration dec = doc.createxmldeclaration("1.0", "utf-8", null); doc.appendchild(dec); //4、创建根节点 xmlelement books = doc.createelement("books"); //将根节点添加到文档中 doc.appendchild(books); //5、给根节点books创建子节点 xmlelement book1 = doc.createelement("book"); //将book添加到根节点 books.appendchild(book1); //6、给book1添加子节点 xmlelement name1 = doc.createelement("name"); name1.innertext = "三国演义"; book1.appendchild(name1); xmlelement price1 = doc.createelement("price"); price1.innertext = "70"; book1.appendchild(price1); xmlelement des1 = doc.createelement("des"); des1.innertext = "好看"; book1.appendchild(des1); xmlelement book2 = doc.createelement("book"); books.appendchild(book2); xmlelement name2 = doc.createelement("name"); name2.innertext = "西游记"; book2.appendchild(name2); xmlelement price2= doc.createelement("price"); price2.innertext = "80"; book2.appendchild(price2); xmlelement des2 = doc.createelement("des"); des2.innertext = "还不错"; book2.appendchild(des2); doc.save("books.xml"); console.writeline("保存成功"); console.readkey(); } |
根据代码写的,然后运行,就会得到我们想要的xml文档:

2)创建带属性的xml
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
|
static void main(string[] args) { xmldocument doc = new xmldocument(); xmldeclaration dec = doc.createxmldeclaration("1.0", "utf-8","yes"); doc.appendchild(dec); xmlelement order = doc.createelement("order"); doc.appendchild(order); xmlelement customername = doc.createelement("customername"); customername.innertext = "张三"; order.appendchild(customername); xmlelement customernumber = doc.createelement("customernumber"); customernumber.innertext = "1010101"; order.appendchild(customernumber); xmlelement items = doc.createelement("items"); order.appendchild(items); xmlelement orderitem1 = doc.createelement("orderitem"); //给节点添加属性 orderitem1.setattribute("name", "单反"); orderitem1.setattribute("count", "1120"); items.appendchild(orderitem1); xmlelement orderitem2 = doc.createelement("orderitem"); //给节点添加属性 orderitem2.setattribute("name", "书"); orderitem2.setattribute("count", "30"); items.appendchild(orderitem2); xmlelement orderitem3 = doc.createelement("orderitem"); //给节点添加属性 orderitem3.setattribute("name", "手机"); orderitem3.setattribute("count", "2000"); items.appendchild(orderitem3); doc.save("order.xml"); console.writeline("保存成功"); console.readkey(); } |
根据代码写的,然后运行,就会得到我们想要的xml文档:

2.追加xml
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
static void main(string[] args){ //追加xml文档 xmldocument doc = new xmldocument(); xmlelement books; if (file.exists("books.xml")) { //如果文件存在 加载xml doc.load("books.xml"); //获得文件的根节点 books = doc.documentelement; } else { //如果文件不存在 //创建第一行 xmldeclaration dec = doc.createxmldeclaration("1.0", "utf-8", null); doc.appendchild(dec); //创建跟节点 books = doc.createelement("books"); doc.appendchild(books); } //5、给根节点books创建子节点 xmlelement book1 = doc.createelement("book"); //将book添加到根节点 books.appendchild(book1); //6、给book1添加子节点 xmlelement name1 = doc.createelement("name"); name1.innertext = "c#开发大全"; book1.appendchild(name1); xmlelement price1 = doc.createelement("price"); price1.innertext = "110"; book1.appendchild(price1); xmlelement des1 = doc.createelement("des"); des1.innertext = "看不懂"; book1.appendchild(des1); doc.save("books.xml"); console.writeline("保存成功"); console.readkey();} |
根据代码写的,然后运行,就会得到我们想要的xml文档:

3.读取xml
1)读取普通xml
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
static void main(string[] args) { xmldocument doc = new xmldocument(); //加载要读取的xml doc.load("books.xml"); //获得根节点 xmlelement books = doc.documentelement; //获得子节点 返回节点的集合 xmlnodelist xnl = books.childnodes; foreach (xmlnode item in xnl) { console.writeline(item.innertext); } console.readkey();} |
根据代码写的,然后运行,就会得到读取的xml结果:

2)读取带属性的xml
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
static void main(string[] args) { //读取带属性的xml文档 xmldocument doc = new xmldocument(); doc.load("order.xml"); xmlnodelist xnl = doc.selectnodes("/order/items/orderitem"); foreach (xmlnode node in xnl) { console.writeline(node.attributes["name"].value); console.writeline(node.attributes["count"].value); } console.readkey();} |
根据代码写的,然后运行,就会得到读取的xml结果:

4.修改属性的值
|
1
2
3
4
5
6
7
8
9
10
11
12
13
|
static void main(string[] args) { //改变属性的值 xmldocument doc = new xmldocument(); doc.load("order.xml"); xmlnode xn = doc.selectsinglenode("/order/items/orderitem[@name='单反']"); xn.attributes["count"].value = "2000"; xn.attributes["name"].value = "电脑"; doc.save("order.xml"); console.writeline("保存成功"); console.readkey(); } |
根据代码写的,然后运行,就会得到修改后的xml结果:

5.删除xml节点
|
1
2
3
4
5
6
7
8
9
10
|
static void main(string[] args){ xmldocument doc = new xmldocument(); doc.load("order.xml"); xmlnode xn = doc.selectsinglenode("/order/items"); xn.removeall(); doc.save("order.xml"); console.writeline("删除成功"); console.readkey();} |
根据代码写的,然后运行,就会得到修删除后的xml结果:

至此:xml简单的增删改操作就结束了。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持米米素材网。
发表评论