一不小心就玩了一周的遊戲了,哎,玩的時候時間過得總是這麼快。。。
於是今天決定看一下之前不怎麼很熟悉的xml;(之前做遊戲時資料的儲存用到過xml,但這塊是另乙個同事在做,所以不怎麼熟悉),
看了看他寫的xml和解析方法,然後自己改進了下,所以來簡單的總結和分享分享
主要涉及到的有:
1. xml 建立
2.xml的解析
3.將解析後的xml資料用vector儲存起來;
如下:(寫完xml後,最簡單的檢查語法錯誤就是用ie瀏覽器開啟看看,可以開啟則說明語法沒錯)
<?xml version="1.0" encoding="utf-8"?>
1100
4100
5100
在這裡我按照網上的xml書寫格式新建了乙個名為 "mineral.xml"的xml;
(mineral就是礦的意思,xml 中我隨意寫了3中型別的礦石,每種礦石有自己的型別、倍率、概率)
然後將其儲存在資源資料夾裡面,然後新建乙個cocos2d-x專案,
下面貼出主要解析**
//.h檔案
#ifndef __helloworld_scene_h__
#define __helloworld_scene_h__
#include "cocos2d.h"
#include #include typedef struct mineral
*ptrmineral;
class helloworld : public cocos2d::cclayer
;#endif
//.cpp檔案
#include "helloworldscene.h"
#include "../support/tinyxml2/tinyxml2.h"
using namespace tinyxml2;
using_ns_cc;
ccscene* helloworld::scene()
bool helloworld::init()
readminearlxml();
displayvec();
return true;
}bool helloworld::readminearlxml()
else
cclog("star read mineral.xml");
xmldata->parse(pxmlbuffer,nsize);
xmlelement *rootnode = xmldata->rootelement();
if(!rootnode)
xmlelement* curnode = rootnode->firstchildelement("mineral");
while(null!= curnode)
delete xmldata;
return true; }
void helloworld::displayvec()
}void helloworld::menuclosecallback(ccobject* psender)
上面分別包含了xml的解析即xml的資料顯示:
顯示如下:
star read mineral.xml
*********m_pmineralvec*********
= 1
= 100
= 20
= 4
= 100
= 20
= 5
= 100
= 20
對比可知,輸出結果和之前建立的xml一致,就這樣,xml的解析就ok 了,是不是很簡單啊 在cocos2dx中解析plist檔案
先儲存,備用 plist檔案實際上就是xml檔案,預設情況下,我用texturepacker生成的紋理中會對應乙個plist檔案,通過plist檔案的資訊,可以知道紋理中各個小的位置和大小。我生成的plist檔案如下圖 cocos2dx對解析這類的檔案提供了不錯的支援 plistutil.h ifn...
在Cocos2d X中使用xml
xml就可以擴充套件標記語言。在遊戲開發中,經常使用於儲存遊戲資訊,如最高分,遊戲等級。等資訊,和描寫敘述一些資源等,我第一次使用xml是在使用ccanimation建立動畫中,使用plist檔案載入動畫時。使用了xml檔案當中plist檔案事實上就是乙個xml檔案,在前面的部落格中的在cocos2...
cocos2dx記憶體管理解析
今天第一天開始寫部落格,我想我也會一直的堅持堅持下去,和所有人進行分享和交流,這也是源於對技術的熱愛和對遊戲的熾熱,我想我的這一生都將會奉獻給遊戲,他是我一輩子的事業更是我這輩子的朋友,好了廢話就不多說了,第一篇部落格我們就來聊聊cocos2dx的記憶體管理。我們首先來看下下面的 片段 class ...