Fork me on GitHub

可扩展标记语言XML

什么是XML

XML称为可扩展标记性语言,是eXtensible Markup Language的缩写,在.NET框架中XML是非常重要的一部分,它用于

描述数据,是当前处理结构化文档信息的有力工具.

以下为XML文件(books.xml)

<?xml version="1.0" encoding="utf-8" ?>
<!--
 xml文件中只能有一个根节点
 -->
<books>
  <book id="001">
    <bookName>预约死亡</bookName>
    <price>50</price>
    <author>毕淑敏</author>
  </book>

  <book id="002">
    <bookName>解忧</bookName>
    <price>60</price>
    <author>东野圭吾</author>
  </book>
  
    <book id="003">
      <bookName>看见</bookName>
      <price>70</price>
      <author>柴静</author>
  </book>
</books>

 

XML是一种编程语言吗?

解析:XML只是一种标记语言,不存在将XML文档转换为可执行的二进制代码的情况.

 

操作XML的方法

解析XML文件:

 1 XmlDocument doc = new XmlDocument();
 2             //和硬盘上一个文件绑定
 3             doc.Load("books.xml");
 4             //将整篇文档中的根节点提出来
 5             XmlNode root = doc.DocumentElement;
 6             //根据root,找所有子节点的集合  root.ChildNodes
 7             foreach (XmlNode item in root.ChildNodes)
 8             {
 9                 //一个item就是Xml中一个book
10                 //图书编号
11                 string bookid = item.Attributes["id"].Value;
12                 Console.WriteLine("图书编号:\t" + bookid);
13                 foreach (XmlNode child in item.ChildNodes)
14                 {
15                     //一个child代表一本图书的单个属性
16                     switch (child.Name)
17                     {
18                         case "bookName":
19                             Console.WriteLine("图书名称:\t" + child.InnerText);
20                             break;
21                         case "price":
22                             Console.WriteLine("图书价格\t" + child.InnerText);
23                             break;
24                         case "author":
25                             Console.WriteLine("图书作者\t" + child.InnerText);
26                             break;
27                     }
28                 }
29                 Console.WriteLine("==========================================");
30             }

 

posted @ 2017-07-08 13:12  L波涛  阅读(635)  评论(0编辑  收藏  举报