XML代码创建及其解析

前端之家收集整理的这篇文章主要介绍了XML代码创建及其解析前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

#include <tinyxml2/tinyxml2.h>

using namespace tinyxml2;

@H_502_31@
@H_502_31@
@H_502_31@
// 创建文档对象 @H_502_31@ auto myTinyXMLDoc = new XMLDocument ();@H_502_31@ @H_502_31@ 创建根节点并连接到文档 @H_502_31@ auto rootElement = myTinyXMLDoc-> NewElement ( "information" );@H_502_31@ myTinyXMLDoc-> LinkEndChild (rootElement);@H_502_31@ @H_502_31@ 创建 student 节点 并连接到根节点 @H_502_31@ auto stuElement = myTinyXMLDoc-> "student" );@H_502_31@ rootElement-> LinkEndChild (stuElement);@H_502_31@ @H_502_31@ person 并连接到 节点 @H_502_31@ auto personElement = myTinyXMLDoc-> "person" );@H_502_31@ stuElement-> LinkEndChild (personElement);@H_502_31@ @H_502_31@ 节点设置属性 @H_502_31@ personElement-> SetAttribute ( "id" , "123" );@H_502_31@ @H_502_31@ @H_502_31@ @H_502_31@ name auto nameElement = myTinyXMLDoc-> "name" );@H_502_31@ personElement-> LinkEndChild (nameElement);@H_502_31@ @H_502_31@ 节点添加文本值 @H_502_31@ auto nameText = myTinyXMLDoc-> NewText ( "zhangsan" );@H_502_31@ nameElement-> LinkEndChild (nameText);@H_502_31@ @H_502_31@ sex auto sexElement = myTinyXMLDoc-> "sex" );@H_502_31@ personElement-> LinkEndChild (sexElement);@H_502_31@ @H_502_31@ auto sexText = myTinyXMLDoc-> "male" );@H_502_31@ sexElement-> LinkEndChild (sexText);@H_502_31@ @H_502_31@ 保存 XML @H_502_31@ myTinyXMLDoc-> SaveFile ( FileUtils :: getInstance ()-> fullPathForFilename ( "stuInfo.xml" ). c_str ());@H_502_31@ @H_502_31@ 打印 Print ();@H_502_31@ 删除 myTinyXMLDoc 对象
delete myTinyXMLDoc;
@H_502_31@
@H_502_31@
@H_502_31@
cocos2d: fullPathForFilename: No file found at stuInfo.xml. Possible missing file.@H_502_31@ <information>@H_502_31@ <student>@H_502_31@ <person id="123">@H_502_31@ <name>zhangsan</name>@H_502_31@ <sex>male</sex>@H_502_31@ </person>@H_502_31@ </student>
</information>
@H_502_31@
@H_502_31@
@H_502_31@
第二部分解析:
@H_502_31@
XMLDocument ();@H_502_31@ @H_502_31@ myTinyXMLDoc-> Parse ( getStringFromFile ( 或者 @H_502_31@ // auto myTinyXMLDoc = new XMLDocument(FileUtils::getInstance()->fullPathForFilename("stuInfo.xml").c_str()); @H_502_31@ // myTinyXMLDoc->LoadFile(FileUtils::getInstance()->fullPathForFilename("stuInfo.xml").c_str()); @H_502_31@ @H_502_31@ 获取根节点 @H_502_31@ RootElement ();@H_502_31@ @H_502_31@ 获取 auto stuElement = rootElement-> FirstChildElement ();@H_502_31@ @H_502_31@ @H_502_31@ auto personElement = stuElement-> FirstChildElement ();@H_502_31@ @H_502_31@ while (personElement) {@H_502_31@ 属性 @H_502_31@ auto attributeInfo = personElement-> FirstAttribute ();@H_502_31@ while (attributeInfo) {@H_502_31@ 获取所有属性 @H_502_31@ CCLOG ( "%s: %s:" ,attributeInfo-> Name (),93)">Value ());@H_502_31@ attributeInfo = attributeInfo-> Next ();@H_502_31@ @H_502_31@ }@H_502_31@ @H_502_31@ name @H_502_31@ auto nameElement = personElement-> FirstChildElement ();@H_502_31@ "name: %s" ,nameElement-> GetText ());@H_502_31@ @H_502_31@ sex @H_502_31@ auto sexElement = nameElement-> NextSiblingElement ();@H_502_31@ "sex: %s" ,sexElement-> GetText ());@H_502_31@ @H_502_31@ @H_502_31@ 查找下一节点 @H_502_31@ personElement = personElement-> NextSiblingElement ();@H_502_31@ @H_502_31@ }@H_502_31@ @H_502_31@ @H_502_31@ 对象 @H_502_31@ delete myTinyXMLDoc;@H_502_31@ @H_502_31@
@H_502_31@
@H_502_31@
@H_502_31@
创建xml文件:New File—other—Empty 输入 文件名.xml

猜你在找的XML相关文章