测试的data.xml文件的内容如下:
<data> <p name="cxm" age="20"/> <p name="zqr" age="30"/> <p name="zrk" age="40"/></data>
#ifndef __HELLOWORLD_SCENE_H__#define __HELLOWORLD_SCENE_H__#include "cocos2d.h"USING_NS_CC;class HelloWorld : public cocos2d::Layer{public: static cocos2d::Scene* createScene(); virtual bool init(); voID readxmlByCocosAPI(); CREATE_FUNC(HelloWorld);private: LabelTTF *pLabel;};#endif // __HELLOWORLD_SCENE_H__
#include "HelloWorldScene.h"#include "tinyxml2/tinyxml2.h"Scene* HelloWorld::createScene(){ auto scene = Scene::create(); auto layer = HelloWorld::create(); scene->addChild(layer); return scene;}bool HelloWorld::init(){ if ( !Layer::init() ) { return false; } Size visibleSize = Director::getInstance()->getVisibleSize(); Vec2 origin = Director::getInstance()->getVisibleOrigin(); pLabel = LabelTTF::create("","Arial",30); pLabel->setposition(visibleSize/2.0); this->addChild(pLabel); this->readxmlByCocosAPI(); return true;}voID HelloWorld::readxmlByCocosAPI(){ auto doc = new tinyxml2::XMLdocument(); doc->Parse(fileUtils::getInstance()->getStringFromfile("data.xml").c_str()); auto root = doc->RootElement(); for (auto e = root->FirstChildElement(); e; e = e->NextSiblingElement()) { std::string str; for (auto attr = e->FirstAttribute(); attr; attr = attr->Next()) { str += attr->name(); str += ":"; str += attr->Value(); str += ","; } log("%s",str.c_str()); } CC_SAFE_DELETE(doc);}总结
以上是内存溢出为你收集整理的Cocos2d-3.x_读取xml文件全部内容,希望文章能够帮你解决Cocos2d-3.x_读取xml文件所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)