• 大小: 1MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-10-03
  • 语言: 其他
  • 标签: pugixml  XML  样例  

资源简介

pugixml 一个很好用的XML类,里面提供了头文件,lib,使用例子,下载下来就可以直接在你的工程中使用。看了例子就知道怎么用了。

资源截图

代码片段和文件信息


#include “pugixml.hpp“

//cfg_file xml文件名
//cfg 保存的参数结构体
int GetCfg(const char *cfg_file DataServerCfg& cfg)
{
    pugi::xml_document doc;
    pugi::xml_parse_result result = doc.load_file(cfg_file);
    if (result)
    {
        pugi::xml_node cfg_node = doc.child(“QDadaServerCfg“);

        std::string str_host = cfg_node.child_value(“RouterHost“);
        std::string str_port = cfg_node.child_value(“RouterPort“);

        std::vector vecSegTag;
        boost::split(vecSegTag str_port boost::is_any_of(““));
        if (vecSegTag.size() != 3)
        {
            return QDATA_CONFIG_ERROR;
        }

        cfg.pull = “tcp://“ + str_host + “:“ + vecSegTag[0];
        cfg.reply = “tcp://“ + str_host + “:“ + vecSegTag[1];
        cfg.push = “tcp://“ + str_host + “:“ + vecSegTag[2];

        cfg.mem_size = atoi(cfg_node.child_value(“MemPool“));
        pugi::xml_node plugin_node = cfg_node.child(“Plugin“);
        cfg.plugin_file = plugin_node.attribute(“file“).as_string();
        for (pugi::xml_node para = plugin_node.first_child(); para; para = para.next_sibling())
        {
            cfg.plugin_paras[para.attribute(“name“).as_string()] = para.attribute(“value“).as_string();
        }
        if (cfg.pull.empty() || cfg.push.empty() ||cfg.plugin_file.empty() || cfg.mem_size <= 0)
        {
            LOG_ERROR(“Get cfg error“);
            return QDATA_CONFIG_ERROR;
        }
    }
    else
    {
        LOG_ERROR(“error: %s“result.description());
        return QDATA_CONFIG_ERROR;
    }
    return 0;
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       2736  2013-08-26 10:54  pugixml\include\pugiconfig.hpp

     文件      45559  2013-08-26 10:54  pugixml\include\pugixml.hpp

     文件    1502190  2013-08-26 11:05  pugixml\lib\win32\pugixml.lib

     文件    1213116  2013-08-26 11:05  pugixml\lib\win32\pugixmld.lib

     文件    1506812  2013-08-26 11:06  pugixml\lib\win64\pugixml.lib

     文件    1751572  2013-08-26 11:06  pugixml\lib\win64\pugixmld.lib

     文件       1610  2014-03-06 17:22  pugixml\src\main.cpp

     文件        953  2014-03-06 17:26  pugixml\src\server_cfg.xml

     目录          0  2014-03-06 17:38  pugixml\lib\win32

     目录          0  2014-03-06 17:38  pugixml\lib\win64

     目录          0  2014-03-06 17:16  pugixml\include

     目录          0  2014-03-06 17:18  pugixml\lib

     目录          0  2014-03-06 17:24  pugixml\src

     目录          0  2014-03-06 17:19  pugixml

----------- ---------  ---------- -----  ----

              6024548                    14


评论

共有 条评论