您当前的位置: 首页 > 

鱼儿-1226

暂无认证

  • 0浏览

    0关注

    1100博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

Cocos2d-x数据模块教程03:XML数据操作

鱼儿-1226 发布时间:2020-09-09 10:09:35 ,浏览量:0

XML也称可扩展标记语言,在游戏开发中它常常用于保存游戏数据信息,如最高分、游戏等级等信息,另外也常用来描述一些资源等。加载动画的plist文件、瓦片地图编辑器到处的地图格式tmx文件,实际上都是特定格式的xml文件。

       另外 UserDefault 单例类保存的数据,也是存储在xml文件中的。Cocos2d-x 已经加入了 tinyxml2库 用于xml的解析。3.x版本位于external/tinyxml2下。

本节要介绍的就是:如何使用tinyxml2库来操作处理xml文件。

 

【XML简介】

摘自:http://www.w3school.com.cn/xml/index.asp

 

1、什么是XML?

> XML 指可扩展标记语言(EXtensible Markup Language)。

> XML 是一种标记语言,很类似 HTML。

> XML 的设计宗旨是:传输数据,而非显示数据。

> XML 标签没有被预定义,您需要自行定义标签。

> XML 被设计为具有自我描述性。

> XML 是 W3C 的推荐标准。

 

2、XML的一个例子

先来看一个简单的例子。

//


George
John
Reminder
Don't forget the meeting!

//

代码分析:

(1)第一行是 XML 声明。它定义 XML 的版本(1.0)和所使用的编码(UTF-8字符集)。

(2)下一行描述文档的根元素(像在说:“本文档是一个便签”):  。

(3)接下来 4 行描述根元素的 4 个子元素(to,from,heading,body)。

(4)最后一行定义根元素的结尾: 。

以上是一个简单的XML文档。可以发现XML的语法很简单,标签没有被预定义,都是自己定义的标签。并且元素可以有子元素,这就形成了一个树形结构。

 

3、XML树结构

> XML 文档必须包含根元素,该元素是所有其他元素的父元素。

> 所有元素均可拥有 多个子元素。

> 所有元素均可拥有 文本内容和属性(类似 HTML 中)。

> 父、子以及同胞等术语用于描述元素之间的关系:父元素拥有子元素;相同层级上的子元素成为同胞(兄弟或姐妹)。

> XML 文档中的元素形成了一棵文档树的结构。这棵树从“根部”开始,并扩展到树的“枝叶”。

//


.....
.....
.....


.....
.....
.....

.....

//

如下所示,一个树结构的实例:

wKioL1ThrrvCy2UXAADTKMjl7cM977.jpg

它表示了XML中的一本书:

> 根元素是 。文档中的所有 元素都被包含在 中 。

> 并且 元素也有 4 个子元素:、< author>、、 。

> category、lang均为元素的属性。

> 的4个子元素。

//


Everyday Italian
Giada De Laurentiis
2005
30.00


Harry Potter
J K. Rowling
2005
29.99


Learning XML
Erik T. Ray
2003
39.95


//

 

4、语法规则

(1)XML 文档必须有根元素。

(2)XML 文档必须有结束标签。(

This is a paragraph.

(3)XML 标签对大小写敏感。(标签 与 是不同的)

(4)XML 元素必须被正确的嵌套。

//

This text is bold and italic

This text is bold and italic
//

(5)XML 属性值必须加引号。(单引号'  '、双引号"  " ,均可以)

//


//

 

4.1、注释

在 XML 中编写注释的语法与 HTML 的语法很相似:

//

//

 

4.2、保留空格

HTML会把多个连续的空格字符裁减(合并)为一个。

而在XML中,空格不会被删节。

//
content :Hello    my name is David.
HTML    :Hello my name is David.
XML     :Hello    my name is David.
//

 

4.3、实体引用

在 XML 中,一些字符拥有特殊的意义。

如果你把字符 "

关注
打赏
1604459285
查看更多评论
立即登录/注册

微信扫码登录

0.0401s