C++ XML操作类
2019-03-03 本文已影响0人
ALONE_WORK
C++ XML操作类
转载自:http://beself.top/2019/03/03/c-xml%E6%93%8D%E4%BD%9C%E7%B1%BB/
gitee源码:https://gitee.com/ALONE_WORK/MFCClass
此类是在使用VS开发,开发使用了树形数据结构来保存,并且在程序中都是使用递归的方法来使用树形数据结构。使用时请自己先掌握基本用法。
公共方法
/ 设置xml文件目录,FileName:xml数据文件名(目录)
SetXmlFileName(const std::string FileName);
取数据
*ReadXmlFileName();
XML数据节点-增加节点时只增加节点名,如果需要增加节点的属性,再调用AddXmlAttrValue来增加节点属性值
AddXmlNodeData(XMLFileData *XmlData, const std::string ParentNodeName, const std::string NodeName);
节点添加属性值
AddXmlAttrValue(XMLFileData *XmlData, const std::string NodeName, const std::string AttrName, const std::string AttrValue);
节点属性值
DeleteXmlAttrValue(XMLFileData *XmlData, const std::string NodeName, const std::string AttrName);
xml节点值
ModifiedXmlNodeValue(const std::string NodeName, const std::string Value);
想xml节点属性值,修改完成后自动保存到xml文件,无需另外保存
ModifiedXmlNodeAttr(XMLFileData *XmlData, const std::string NodeName, const std::string AttrName, const std::string AttrValue);
子节点-删除子节点时会删除包括子节点下的所有数据
DeleteXmlChildNode(XMLFileData *XmlData, const std::string NodeName);
xml文件
SaveXmlData(const XMLFileData XmlData);
XML数据
ReleaseXmlData(XMLFileData *XmlData);
类声明及使用方法
- 声明头文件:include “JXML.h”
- 初始化对象: JXML xml(“data.xml”); 注:在初始化时要初始化xml文件名(包含目录)
- 读取xml: XMLFileData *xmlData = xml.ReadXmlFileName(); 注:读取时需要声明XmlFileData树形结构
- 释放XmlFileData树形内存:最后在使用完成后需要释放空间-xml.ReleaseXmlData(xmlData);释放XmlFileData树形内存:最后在使用完成后需要释放空间-xml.ReleaseXmlData(xmlData);