XML文件的基本结构 [大三四八九月实习]

前端之家收集整理的这篇文章主要介绍了XML文件的基本结构 [大三四八九月实习]前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

TinyXML官网之上介绍的XML文件的几种形式,咱们用TinyXML集的类都可以创建这几种格式的XML文件

1 XML文件的几种结构

First One

<?xml version="1.0" ?>

<Hello>World</Hello>

Second One

<?xml version="1.0" ?>
<poetry>
 <verse>
 Alas
  Great World
 Alas (again)
 </verse>
</poetry>

Third One

<?xml version="1.0" ?>
<shapes>
 <circle name="int-based" x="20" y="30" r="50" />
 <point name="float-based" x="3.5" y="52.1" />
</shapes>

Fourth One

<?xml version="1.0" ?>
<MyApp>
 <!-- Settings for MyApp -->
 <Messages>
 <Welcome>Welcome to MyApp</Welcome>
 <Farewell>Thank you for using MyApp</Farewell>
 </Messages>
 <Windows>
 <Window name="MainFrame" x="5" y="15" w="400" h="250" />
 </Windows>
 <Connection ip="192.168.0.1" timeout="123.456000" />
</MyApp>

2 XML文件的结构

不管是哪一种形式的XML文件,所具结构都是一样的。

一个XML文件通常包含文件头和文件体两大部分。

(1)文件

文件头由XML声明( XML文件的第一语句)和可缺省(可缺省笔记也就缺省了)DTD文件类型声明组成。

XML声明

XML声明在XML文件中必须具有,它的内容使文件符合XML的标准规格。格式为:

<?xml 版本信息编码信息文档独立性信息 ?>例:<? Xml version=”1.0”encoding=”gb2312” standalone=”yes”>

XML声明必须出现在XML文档的第一行。

(2)文件

文件体中包含的是XML文件内容XML元素是XML文件内容的基本单元。从语法讲,一个元素包含一个起始标记、一个结束标记以及标记之间的数据内容

<bookstore>
<book category="CHILDREN">
  <title>Harry Potter</title> 
  <author>J K. Rowling</author> 
  <year>2005</year> 
  <price>29.99</price> 
</book>
<book category="WEB">
  <title>Learning XML</title> 
  <author>Erik T. Ray</author> 
  <year>2003</year> 
  <price>39.95</price> 
</book>
</bookstore> 

XML 元素指的是从(且包括)开始标签直到(且包括)结束标签的部分。

元素可包含其他元素、文本或者两者的混合物。元素也可以拥有属性

在上例中,<bookstore> 和 <book> 都拥有元素内容,因为它们包含了其他元素。<author> 只有文本内容,因为它仅包含文本。

在上例中,只有 <book> 元素拥有属性 (category="CHILDREN")。

摘自<http://www.w3school.com.cn/xml/xml_elements.asp>

所有的数据内容都必须在某个标记的开始和结束标记内,而每个标记又必须包含在另一个标记的开始与结束标记内,形成嵌套式的分布,只有最外层的标记不必被其他的标记所包含。最外层的是根元素(Root),又称文件(Document)元素,所有的元素都包含在根元素内。


3 TinyXML类与XML文件的对应

不用去关心XML语法,因为在这里我们要做的不是用XML语言去编写XML语言。我们只是调用TinyXML中的类来完成对XML文件的创建、读写操作。所以,我们只需要了解一点关于XML文件的结构即可用TinyXML类来编写咱们的XML文件,达到供程序使用的目的(存储数据,代替文件流 )。

在明白XML结构(诸如元素等的重要结构)之后令人想到:TinyXML类以XML文件为对象,封装了与XML文件每个部分对应的类。TiXmlDocument对应XML整个文件TiXmlDeclaration类对应XML文件的声明部分,TiXmlElement对应XML的每个元素( XML文体的主要内容就是元素,恐怕对其类操作很多 ),因为XML元素还包括属性”、“文本”及“包含的元素”等内容,所以还TinyXML还拥有TiXmlText实现XML内容的类,还拥有实现每个元素属性的类TiXmlAttribute。用每个类的成员函数LinkEndChild()来实现XML中每个元素的嵌套,按照XML的结构流程使用TinyXML类,使用TinyXML时参看其官方手册。是表述不清 ]

明白这一层关系之后,在使用TinyXML的脉络上就更应该清晰了。

此次笔记记录完毕。

原文链接:https://www.f2er.com/xml/299867.html

猜你在找的XML相关文章