tinyxml解析配置文件

一、TinyXml类简单介绍

TinyXml实现的时DOM访问模型,因此提供了一系列的类对应XML文件中的各个节点。主要类间的关系如下图所示:

TiXmlBase:其他类的基类,是个抽象类

TiXmlNode:表示一个节点,包含节点的一般方法,如访问自节点、兄弟节点、编辑自身、编辑子节电

TiXmlDocument:表示整个XML文档,不对应其中某个特定的节点。

TiXmlElement:表示元素节点,可以包含子节点和TiXmlAttribute

TiXmlComment:表示注释

TiXmlDeclaration:表示声明

TiXmlText:表示文本节点

TiXmlUnknown:表示未知节点,通常是出错了

TiXmlAttribute:表示一个元素的属性


二、TinyXml使用
TiXmlDocument doc();//创建对象
doc.LoadFile("filePath.xml");// 载入xml文档

解析xml所有节点与节点值实例:

int CParseConfig::ParseFileToMap(std::string filePath, ConfigMap & LoadData)
{

    TiXmlDocument m_Dxml;

    m_Dxml.LoadFile(filePath.c_str());

    const TiXmlElement* root = m_Dxml.RootElement();
    if(NULL == root)
    {
        LOG_DEBUG("Get root xml element error!");
        return FUN_FAILED;
    }


    for( const TiXmlElement* child = root->FirstChildElement();  child;  child=child->NextSiblingElement())
    {
    
          LOG_DEBUG( "key:" << child->Value() << ",value:" << child->GetText() );//输入解析数据

        LoadData.insert(std::pair<std::string, std::string>(child->Value(),child->GetText() ) );
    }
    
    return FUN_NO_ERROR;
}

目前只解析配置文件。

完!



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值