转自https://blog.csdn.net/liang_baikai/article/details/78783839
概述
TinyXML2是简单实用的开源的C++XML文件解析库,可以很方便的应用到现有的项目之中。
TinyXML2解析器相对TinyXML1在代码上是完全重写,使其更适合于游戏开发中使用。它使用更少的内存,更快,并使用更少的内存分配。
说明
xml类似数据库,一般来说对数据库有什么操作,那么对xml文件也能实现什么操作。
数据库增删查改对应xml文件就是新建xml文件、增加xml文件节点,删除xml文件节点,查询xml文件指定节点的值,修改xml文件中节点的值。
下载链接
使用方法
将tinyxml2.cpp和tinyxml2.h拷贝至项目目录,使用时包含
#include “tinyxml2.h”
using namespace tinyxml2;
示例
创建XML文件
int createXML(const char* xmlPath)
{
XMLDocument doc;
if(3 != doc.LoadFile(xmlPath))
{
cout <<“file has been existed !”<<endl;
return 0;
}
//添加申明可以使用如下两行
XMLDeclaration* declaration=doc.NewDeclaration();
doc.InsertFirstChild(declaration);
XMLElement* root=doc.NewElement("XMLUSER");
doc.InsertEndChild(root);
XMLElement* userNode = doc.NewElement("User");
/*添加属性*/
userNode->SetAttribute("Name","liangbaikai");
userNode->SetAttribute("Password ","bbbbbb");
root->InsertEndChild(userNode);
return doc.SaveFile(xmlPath);
}
int main( int argc, const char ** argv )
{
/创建/
createXML("./xml/bbb.xml");
/增/
//addXML1("./xml/bbb.xml");/添加性别,号码,邮箱/ /再添加一个用户/
//addXML2("./xml/bbb.xml");/在性别后面添加年龄,再添加一个号码/
/删/
//deleteXML("./xml/bbb.xml");/删除第一个号码,删除第二个号码的属性/
/改/
//changeXML("./xml/bbb.xml");/将liangbaikai的年龄改为10000岁,将wenbaikai的号码改为8888结尾/
/查/
//selectXML("./xml/bbb.xml");/将liangbaikai的信息打印出来/
return 0;
}
生成的文件如下
<?xml version="1.0" encoding="UTF-8"?>增
int addXML1(const char* xmlPath)<