1 Star 0 Fork 0

hancm/my-utility

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
xml_utility.h 2.25 KB
一键复制 编辑 原始数据 按行查看 历史
hanchangming 提交于 2021-10-08 17:15 . 添加utility
#ifndef __XMLCONF_H__
#define __XMLCONF_H__
#include <string>
#include <vector>
#include <map>
#define IN
#define INOUT
#define OUT
namespace XmlUtility
{
/**
* @brief 解析XML获取指定路径一级子节点信息
* @param [IN] pcXMLBuff xml内容
* @param [IN] iXMLLen xml长度
* @param [IN] nodePath xml节点路径(格式: root/childroot1/childroot2)
* @param [IN] oNodeInfoMapList 获取路径的所有下级子节点信息
* @return int
* @note
* <sealConf>
* <redis>
<nodeList>
<node>
<host>192.168.0.198</host>
<port>6379</port>
<user></user>
<password></password>
* </node>
* <node>
<host>192.168.0.199</host>
<port>6379</port>
<user></user>
<password></password>
</node>
</nodeList>
<dataLifeTime>7200</dataLifeTime>
</redis>
* </sealConf>
* nodePath: sealConf/redis/nodeList
* oNodeInfoMapList: 获取sealConf/redis/nodeList下的所有node信息
*
* nodePath: sealConf/redis/dataLifeTime
* oNodeInfoMapList: 获取sealConf/redis/dataLifeTime下的信息
*/
int ParseXmlNodeListInfo(IN const char *pcXMLBuff, IN int iXMLLen,
IN const std::string &nodePath,
OUT std::vector<std::map<std::string, std::string>> &oNodeInfoMapList);
/**
* @brief 获取指定节点路径下所有内容
* @param [IN] pcXMLBuff
* @param [IN] iXMLLen
* @param [IN] nodePath
* @param [IN] oNodeInfoMap
* @return int
* @note
*/
int ParseXmlNodeInfo(IN const char *pcXMLBuff, IN int iXMLLen,
IN const std::string &nodePath,
OUT std::map<std::string, std::string> &oNodeInfoMap);
/**
* @brief 获取指定路径的节点信息
* @param [IN] pcXMLBuff
* @param [IN] iXMLLen
* @param [IN] nodePath
* @param [IN] nodeInfo
* @return int
* @note
*/
int GetXmlNode(IN const char *pcXMLBuff, IN const int iXMLLen,
IN const std::string &nodePath,
OUT std::string &nodeInfo);
} /* namespace XmlUtility */
#endif /* __XMLCONF_H__ */
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
C++
1
https://gitee.com/adahancm/my-utility.git
git@gitee.com:adahancm/my-utility.git
adahancm
my-utility
my-utility
master

搜索帮助