Cocos2d-x 3.0 使用TinyXml 解析XML文件

时间:2022-09-17 04:57:34

在cocos2d-x 3.0中Xml解析已经不用自己找库了,已经为我们集成好了。Cocos2d-x 3.0 使用TinyXml 解析XML文件

text.xml

<!--?xml version ="1.0" encoding ="UTF8" standalone="yes" ?-->
<!--?xml-stylesheet type="text/xsl" href="yxfqust.xsl" ?-->
<!--以下是一个学生名单-->
<student_list>
<student>
<stu_num>2012050808</stu_num>
<stu_name>crystal</stu_name>
<stu_class>T74</stu_class>
<stu_class>T74</stu_class>
</student>
<student>
<stu_num> 2012050809</stu_num>
<stu_name>goodmao</stu_name>
<stu_class>T77</stu_class>
</student>
</student_list>

添加头文件:.h

#include "cocos-ext.h"
#include "tinyxml2/tinyxml2.h"
using namespace tinyxml2;

.cpp

//获取文件路径
const char* file_path = FileUtils::getInstance()->fullPathForFilename("text.xml").c_str();
log("external file path = %s",file_path);


XMLDocument* myDocment = new tinyxml2::XMLDocument();
//加载文件
myDocment->LoadFile(file_path);

tinyxml2::XMLElement* rootElement = myDocment->RootElement();


XMLElement* studentElement = rootElement->FirstChildElement();

while (studentElement) {


XMLElement* element = studentElement->FirstChildElement();
while (element) {
log("信息 : %s",element->GetText());
element = element->NextSiblingElement();

}
studentElement = studentElement->NextSiblingElement();

}

打印结果,自己实践吧。