课堂博客-----TreeView+++++XML形成博客

什么是XML?

解析:XML:Extensible Markup Language(可扩展标记语言)

        HTML:HyperLink Text  Markup Language(超文本标记语言)

 xml文件和html文件的区别?

  解析:01.xml严格区分大小写,html不区分

          02.xml不是编译语言,xml和html都是解释型语言

          03.html语言负责显示数据,而Xml文件就是专门用来存储数据

001.对已有的Xml文档进行读取

   eg:

第一步:创建一个Xml文档

 1 //Xml文档
 2 <?xml version="1.0" encoding="utf-8" ?>
 3 <Computers>
 4   <computer>
 5     <Name>LenovoY系列</Name>
 6     <Price>5000</Price>
 7     <Cpu>CORE i3</Cpu>
 8   </computer>
 9   <computer>
10     <Name>DELL YY</Name>
11     <Price>7000</Price>
12     <Cpu>CORE i7</Cpu>
13   </computer> 
14 </Computers>

第二步:将创建好的Xml文档放入到指定文件中

看,法宝!.......不,看图

 

第三部:在main函数中写对Xml文档的操作代码

 1 #region 01.用双foreach遍历
 2             XmlDocument doc = new XmlDocument();
 3             doc.Load("Computer.xml");
 4             XmlNode root = doc.DocumentElement;
 5             //root为一个根节点对象
 6             foreach(XmlNode item in root.ChildNodes)
 7             {
 8                 foreach(XmlNode computer in item.ChildNodes)
 9                {
10                   switch (computer.Name)
11                     {
12                         case "Name":
13                             Console.WriteLine("电脑的名称为:"+computer.InnerText);
14                             break;
15                         case "Price":
16                             Console.WriteLine("电脑的价格为:"+computer.InnerText);
17                             break;
18                         case "Cpu":
19                             Console.WriteLine("电脑的CPU为:"+computer.InnerText);
20                             break;
21                     }
22             #endregion

 

 002.对Xml文档进行修改

 1 <?xml version="1.0" encoding="gb2312"?>
 2 
 3 <bookstore>
 4 
 5 <book genre="fantasy" ISBN="2-3631-4">
 6 
 7 <title>Oberon's Legacy</title>
 8 
 9 <author>Corets, Eva</author>
10 
11 <price>5.95</price>
12 
13 </book>
14 
15 </bookstore>
 1 //将genre属性值为“李赞红“的节点的genre值改为“update李赞红”,将该节点的子节点<author>的文本修改为“亚胜”。
 2 
 3 XmlNodeList nodeList=xmlDoc.SelectSingleNode("bookstore").ChildNodes;//获取bookstore节点的所有子节点
 4 
 5 foreach(XmlNode xn in nodeList)//遍历XML文档所有子节点
 6 
 7 {
 8 
 9 XmlElement xe=(XmlElement)xn;//将子节点类型转换为XmlElement类型
10 
11 if(xe.GetAttribute("genre")=="李赞红")//如果genre属性值为“李赞红”
12 
13 {
14 
15 xe.SetAttribute("genre","update李赞红");//则修改该属性为“update李赞红”
16 
17 XmlNodeList nls=xe.ChildNodes;//继续获取xe子节点的所有子节点
18 
19 foreach(XmlNode xn1 in nls)//遍历
20 
21 {
22 
23 XmlElement xe2=(XmlElement)xn1;//转换类型
24 
25 if(xe2.Name=="author")//如果找到
26 
27 {
28 
29 xe2.InnerText="亚胜";//则修改
30 
31 break;//找到退出来就可以了
32 
33 }
34 
35 }
36 
37 break;
38 
39 }
40 
41 }
42 
43 xmlDoc.Save("bookstore.xml");//保存。
44 
45 //=================
46 
47 最后结果为:
48 
49 <?xml version="1.0" enc
50 
51 oding="gb2312"?>
52 
53 <bookstore>
54 
55 <book genre="fantasy" ISBN="2-3631-4">
56 
57 <title>Oberon's Legacy</title>
58 
59 <author>Corets, Eva</author>
60 
61 <price>5.95</price>
62 
63 </book>
64 
65 <book genre="update李赞红" ISBN="2-3631-4">
66 
67 <title>CS从入门到精通</title>
68 
69 <author>亚胜</author>
70 
71 <price>58.3</price>
72 
73 </book>
74 
75 </bookstore>-->

 

 003.对Xml文档新增节点

 1 //往<bookstore>节点中插入一个<book>节点:
 2 
 3 XmlDocument xmlDoc=new XmlDocument();
 4 
 5 xmlDoc.Load("bookstore.xml");
 6 
 7 XmlNode root=xmlDoc.SelectSingleNode("bookstore");//查找<bookstore>
 8 
 9 XmlElement xe1=xmlDoc.CreateElement("book");//创建一个<book>节点
10 
11 xe1.SetAttribute("genre","李赞红");//设置该节点genre属性
12 
13 xe1.SetAttribute("ISBN","2-3631-4");//设置该节点ISBN属性
14 
15 XmlElement xesub1=xmlDoc.CreateElement("title");
16 
17 xesub1.InnerText="CS从入门到精通";//设置文本节点
18 
19 xe1.AppendChild(xesub1);//添加到<book>节点中
20 
21 XmlElement xesub2=xmlDoc.CreateElement("author");
22 
23 xesub2.InnerText="候捷";
24 
25 xe1.AppendChild(xesub2);
26 
27 XmlElement xesub3=xmlDoc.CreateElement("price");
28 
29 xesub3.InnerText="58.3";
30 
31 xe1.AppendChild(xesub3);
32 
33 root.AppendChild(xe1);//添加到<bookstore>节点中
34 
35 xmlDoc.Save("bookstore.xml");
36 
37 //================
38 
39 结果为:
40 
41 <?xml version="1.0" encoding="gb2312"?>
42 
43 <bookstore>
44 
45 <book genre="fantasy" ISBN="2-3631-4">
46 
47 <title>Oberon's Legacy</title>
48 
49 <author>Corets, Eva</author>
50 
51 <price>5.95</price>
52 
53 </book>
54 
55 <book genre="李赞红" ISBN="2-3631-4">
56 
57 <title>CS从入门到精通</title>
58 
59 <author>候捷</author>
60 
61 <price>58.3</price>
62 
63 </book>
64 
65 </bookstore>

 

 

(二).对treeview进行操作

首先新建一个TreeView控件

 

posted @ 2017-03-22 10:10  会飞的豆子  阅读(174)  评论(0编辑  收藏  举报