什么是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文档

 //Xml文档
<?xml version="1.0" encoding="utf-8" ?>
<Computers>
<computer>
<Name>LenovoY系列</Name>
<Price>5000</Price>
<Cpu>CORE i3</Cpu>
</computer>
<computer>
<Name>DELL YY</Name>
<Price>7000</Price>
<Cpu>CORE i7</Cpu>
</computer>
</Computers>

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

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

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

 #region 01.用双foreach遍历
XmlDocument doc = new XmlDocument();
doc.Load("Computer.xml");
XmlNode root = doc.DocumentElement;
//root为一个根节点对象
foreach(XmlNode item in root.ChildNodes)
{
foreach(XmlNode computer in item.ChildNodes)
{
switch (computer.Name)
{
case "Name":
Console.WriteLine("电脑的名称为:"+computer.InnerText);
break;
case "Price":
Console.WriteLine("电脑的价格为:"+computer.InnerText);
break;
case "Cpu":
Console.WriteLine("电脑的CPU为:"+computer.InnerText);
break;
}
#endregion

002.对Xml文档进行修改

 <?xml version="1.0" encoding="gb2312"?>

 <bookstore>

 <book genre="fantasy" ISBN="2-3631-4">

 <title>Oberon's Legacy</title>

 <author>Corets, Eva</author>

 <price>5.95</price>

 </book>

 </bookstore>
 //将genre属性值为“李赞红“的节点的genre值改为“update李赞红”,将该节点的子节点<author>的文本修改为“亚胜”。

 XmlNodeList nodeList=xmlDoc.SelectSingleNode("bookstore").ChildNodes;//获取bookstore节点的所有子节点

 foreach(XmlNode xn in nodeList)//遍历XML文档所有子节点

 {

 XmlElement xe=(XmlElement)xn;//将子节点类型转换为XmlElement类型

 if(xe.GetAttribute("genre")=="李赞红")//如果genre属性值为“李赞红”

 {

 xe.SetAttribute("genre","update李赞红");//则修改该属性为“update李赞红”

 XmlNodeList nls=xe.ChildNodes;//继续获取xe子节点的所有子节点

 foreach(XmlNode xn1 in nls)//遍历

 {

 XmlElement xe2=(XmlElement)xn1;//转换类型

 if(xe2.Name=="author")//如果找到

 {

 xe2.InnerText="亚胜";//则修改

 break;//找到退出来就可以了

 }

 }

 break;

 }

 }

 xmlDoc.Save("bookstore.xml");//保存。

 //=================

 最后结果为:

 <?xml version="1.0" enc

 oding="gb2312"?>

 <bookstore>

 <book genre="fantasy" ISBN="2-3631-4">

 <title>Oberon's Legacy</title>

 <author>Corets, Eva</author>

 <price>5.95</price>

 </book>

 <book genre="update李赞红" ISBN="2-3631-4">

 <title>CS从入门到精通</title>

 <author>亚胜</author>

 <price>58.3</price>

 </book>

 </bookstore>-->

003.对Xml文档新增节点

 //往<bookstore>节点中插入一个<book>节点:

 XmlDocument xmlDoc=new XmlDocument();

 xmlDoc.Load("bookstore.xml");

 XmlNode root=xmlDoc.SelectSingleNode("bookstore");//查找<bookstore>

 XmlElement xe1=xmlDoc.CreateElement("book");//创建一个<book>节点

 xe1.SetAttribute("genre","李赞红");//设置该节点genre属性

 xe1.SetAttribute("ISBN","2-3631-4");//设置该节点ISBN属性

 XmlElement xesub1=xmlDoc.CreateElement("title");

 xesub1.InnerText="CS从入门到精通";//设置文本节点

 xe1.AppendChild(xesub1);//添加到<book>节点中

 XmlElement xesub2=xmlDoc.CreateElement("author");

 xesub2.InnerText="候捷";

 xe1.AppendChild(xesub2);

 XmlElement xesub3=xmlDoc.CreateElement("price");

 xesub3.InnerText="58.3";

 xe1.AppendChild(xesub3);

 root.AppendChild(xe1);//添加到<bookstore>节点中

 xmlDoc.Save("bookstore.xml");

 //================

 结果为:

 <?xml version="1.0" encoding="gb2312"?>

 <bookstore>

 <book genre="fantasy" ISBN="2-3631-4">

 <title>Oberon's Legacy</title>

 <author>Corets, Eva</author>

 <price>5.95</price>

 </book>

 <book genre="李赞红" ISBN="2-3631-4">

 <title>CS从入门到精通</title>

 <author>候捷</author>

 <price>58.3</price>

 </book>

 </bookstore>

(二).对treeview进行操作

首先新建一个TreeView控件

课堂博客-----TreeView+++++XML形成博客的更多相关文章

  1. MWeb 1.3.7 发布!增加发布到 Wordpress 等支持 MetaWeblog API 的服务,如:Wordpress 博客、新浪博客、cnblogs、oschina。

    MWeb 1.3.7 版的新功能 增加发布到 Wordpress 等支持 Metaweblog API 的服务,目前经测试过的有: Wordpress 博客.新浪博客.cnblogs.oschina. ...

  2. asp.net批量发布博客到各大博客平台

    新浪博客 http://upload.move.blog.sina.com.cn/blog_rebuild/blog/xmlrpc.php 网易博客 http://os.blog.163.com/ap ...

  3. 继网易博客后搜狐博客也增加了nofollow标签

    继网易博客后搜狐博客也增加了nofollow标签 今天在搜狐博客发表了篇文章,在末端添加上我的版权,结果回头查看是发现,这个锚文本被加上了nofollow标签,也就是说这样的外链已经没有传递权重的作用 ...

  4. 【博客导航】Nico博客导航汇总

    摘要 介绍本博客关注的内容大类.任务.工具方法及链接,提供Nico博文导航. 导航汇总 [博客导航]Nico博客导航汇总 [导航]信息检索导航 [导航]Python相关 [导航]读书导航 [导航]FP ...

  5. Node.js 从零开发 web server博客项目[express重构博客项目]

    web server博客项目 Node.js 从零开发 web server博客项目[项目介绍] Node.js 从零开发 web server博客项目[接口] Node.js 从零开发 web se ...

  6. Node.js 从零开发 web server博客项目[koa2重构博客项目]

    web server博客项目 Node.js 从零开发 web server博客项目[项目介绍] Node.js 从零开发 web server博客项目[接口] Node.js 从零开发 web se ...

  7. 转载自jguangyou的博客,XML基本属性大全

    android:layout_width 指定组件布局宽度 android:layout_height 指定组件布局高度 android:alpha 设置组件透明度 android:backgroun ...

  8. Android为TV端助力 转载自jguangyou的博客,XML基本属性大全

    android:layout_width 指定组件布局宽度 android:layout_height 指定组件布局高度 android:alpha 设置组件透明度 android:backgroun ...

  9. 使用django开发博客过程记录3——博客侧栏实现

    说起这个侧栏真是苦恼我很长时间,一开始以为和之前的一样传递额外参数就可以了就像下面这样: class IndexView(ListView): template_name = 'apps/index. ...

随机推荐

  1. 【转】jqGrid学习之参数

    jqGrid参数 名称 类型 描述 默认值 可修改 url string 获取数据的地址 datatype string 从服务器端返回的数据类型,默认xml.可选类型:xml,local,json, ...

  2. 每天一个linux命令(43)--netstat命令

    netstat 命令用于显示与 IP TCP  UDP 和 ICMP协议相关的统计数据,一般用于检验本机各端口的网络连接情况.netstat 是在内核中访问网络及相关信息的程序,它能提供TCP连接,T ...

  3. 从源码解析TreeMap

    上篇文章我们介绍了HashMap集合,这是一个键值对集合,可以高效的按照键查找数值.但是它有一个缺陷:数据如果是无序的可以是很高效的,但是如果数据需要排列有顺序就不适合了.本篇将要介绍的一个集合是树集 ...

  4. HTML 5入门知识——Drag

    HTML 5拖放 拖放的步骤: 1.对象元素的draggable属性设置为true,还需要注意的是a元素和img元素必须指定href. 2.编写与拖放有关的事件处理代码: DataTransfer对象 ...

  5. jQuery后续...

    jQuery 选择器 1.jQuery选择器的简介 (1). Jquery中的选择器完全继承了CSS的风格,利用Jquery选择器,可以非常便捷和快速的找出特定的Dom元素,然后为他们添加相应的行为, ...

  6. 1011: [HNOI2008]遥远的行星

    1011: [HNOI2008]遥远的行星 Time Limit: 10 Sec  Memory Limit: 162 MBSec  Special JudgeSubmit: 2241  Solved ...

  7. java配置文件的读写

    最近在做一个爬虫项目时,用到了读写配置文件的方法,记录下来以后可能用的到. Properties pro = new Properties(); boolean IsFirst = true; //从 ...

  8. 图文:eclipse中SVN分支合并到主干

    在项目开发中,需要添加一些新的功能,但是又不想影响到其他开发人员的项目进度,所以决定使用SVN分支进行开发,分支开发完毕后再合并到主干.本文介绍如何在eclipse中合并分支到主干. 1. 要想将分支 ...

  9. Python Number(数字)

    ---Number类型的细节,其包含的基本数字类型 ---Number基本数字类型之间的数值转换 ---Number上面的数学函数,有些可以直接调用,有些需要导入库 参见http://www.runo ...

  10. CSS学习之选择器

    html是盖房子,css是将房子装扮的更漂亮一些!CSS(Cascading Style Sheets),值层叠样式表. 语法 选择器 { 属性 : 属性值 ; } 比如, p{color:red;} ...