1.tinyxml2的下载和维护地址:https://github.com/leethomason/tinyxml2
2.要使用的文件tinyxml2.h和tinyxml2.cpp,下面做了一下简单的封装,目前项目够用
注意:tinyxml2里的指针返回全部使用的"0",而非"nullptr",所以检测指针是否为空时用“0”来判断
xml.h
#ifndef _XML_H__
#define _XML_H__
#include "tinyxml2.h"
using namespace tinyxml2;
class CXml
{
public:
/*创建xml*/
int CreateXml(const char *pcXmlPath);
int CreateXml(const char *pcXmlPath, const char *pcInitXml);
/*添加xml节点或节点元素*/
int AddNode(const char *pcXmlPath, const char *pcRoot);
int AddNode(const char *pcXmlPath, const char *pcRoot, const char *pcNode);
int AddElement(const char *pcXmlPath, const char *pcRoot, const char *pcNode, const char *pcElement, const char *pcElementAttr);
/*修改xml元素信息*/
int ModifyElementAttr(const char *pcXmlPath, const char *pcRoot, const char *pcNode, const char *pcElement, const char *pcElementAttr);
/*删除节点或节点元素*/
int DeleteRoot(const char *pcXmlPath, const char *pcRoot);
int DeleteNode(const char *pcXmlPath, const char *pcRoot, const char* pcNode);
int DeleteElement(const char *pcXmlPath, const char *pcRoot, const char*pcNode, const char *pcElement);
/*打印xml,调试用*/
void PrintfXml(const char *pcXmlPaht);
public:
CXml();
~CXml();
};
#endif /*_XML_H__*/
xml.cpp