boost库简单读写xml

boost 序列化成 xml文件 #include "stdafx.h"#include #include #include #include #include class TestClass{public:    TestClass()    {        m_cMember1 = m;        m_strMemberName = "Hello.";        m_nData = 1;    }   阅读详情
#include <boost/property_tree/ptree.hpp>  
#include <boost/property_tree/xml_parser.hpp>  
#include <boost/foreach.hpp>  
#include <boost/algorithm/string.hpp>  
#include <sstream>


void saveToXml()
{
    using namespace boost::property_tree;
    ptree pt;
//把容器数据写入xml
    for (int i = 0; i < s_ptsMap.size(); i++)
    {
        std::stringstream ss_i;
        ss_i << "vce_map." <<"vec" << i;

        for (int j = 0; j < s_ptsMap[i]->size(); j++)
        {
            std::stringstream ss_j;
            ss_j << "." << "pt" << j;
            auto STR = ss_i.str() + ss_j.str();
            pt.add(STR + ".x", s_ptsMap[i]->at(j).x());
            pt.add(STR + ".y", s_ptsMap[i]->at(j).y());
            pt.add(STR + ".z", s_ptsMap[i]->at(j).z());
        }
    }
//boost 库函数
    boost::property_tree::xml_writer_settings<std::string> settings('\t', 1);
    write_xml("res/tt.xml", pt, std::locale(), settings);
}

void readFromXml(const std::string& fileName)
{
    using namespace boost::property_tree;

    ptree pt, vec_list, point_list;
    read_xml(fileName, pt);
    vec_list = pt.get_child("vce_map");

    int i = 0;

    for (auto vec = vec_list.begin(); vec != vec_list.end(); vec++)  
    {
        std::stringstream ss_i;
        ss_i << "vce_map." << "vec" << i;
        point_list = pt.get_child(ss_i.str());        
        int j = 0;
        for (auto point = point_list.begin(); point != point_list.end(); point++)
        {
            std::stringstream ss_j;
            ss_j << ".pt" << j;
            auto STR = ss_i.str() + ss_j.str();
            float x = pt.get<float>(STR + ".x");
            float y = pt.get<float>(STR + ".y");
            float z = pt.get<float>(STR + ".z");

            s_ptsMap[i]->push_back(osg::Vec3(x, y, z));
            j++;
        }
        i++;
    }
}
使用Boost property tree来解析带attribute的xml boost property tree的5分钟教程虽然简单明了,可惜使用的xml不够典型。今天由于工作上要读取带属性并且有几层嵌套的xml配置文件,因此研究了一下如何使用。下面直接列出测试用的xml文件内容和程序代码。 debug_settings.xml,在boost的例子上改得稍微复杂一些。 Finance_Internal 阅读详情

相关推荐

C++ boost库教程(十二):boost解析xml文件

xml文件,作为应用程序的配置文件很常见,功能也比ini文件丰富,对于xml文件的读写,有很多方法,之前我主要使用libxml, tinyxml这两个库,操作方法稍微有点复杂,对比使用boost的xml操作,boost相对简单。 boost库的property_tree保存了多个属性值得树形结构,可以解析xml, json, ini等文件。 下面介...

琅嬛福地 2745

Boost学习之读写xml文件

boost对xml的支持,可以在项目中很方便的加入xml配置文件,读写非常方便,本文从使用方面展开讲解,如果你有类似的需求,本文将会助你一臂之力。

Marble_ccp的博客 9644

C++ XML文件写入

一个简单的C++写入XML文件的方法,调用了BOOST库函数。

boost/property_tree/ptree读写xml全整理

一、库安装(MinGW) 直接在boost网站上下载解压,并将boost_1_67内的boost文件夹复制到MinGW的include文件夹下即可 下载官网地址:https://www.boost.org/ 二、头文件 #include &lt;boost/property_tree/ptree.hpp&gt; #include &lt;boost/property_tree...

百姓之城 1万+

使用boost读取XML文件详细介绍

boost读取XML文件 boost中提供了对配置文件读取的支持,它就是:property_tree。     basic_ptree 是property_tree的核心基础。其接口像std::list。可以执行很多基本的元素操作,比如使用begin()、end()等。     此外还加入了操作属性树的get()、get_child()、get_value()、data()等额外的操作。     basic_ptree有两个重要的内部定义self_type和value_type。self_type是basic_ptree模板实例化后自身的类型,它也是子节点的类型。value_type是节点的

【RK3588 NPU性能调优实战】多线程异步推理YOLOv5,榨干6TOPS算力

本文详细解析了如何在RK3588 NPU上通过多线程异步推理优化YOLOv5目标检测性能,实现6TOPS算力的最大化利用。通过线程池设计、流水线化帧处理及避开内存带宽瓶颈等技巧,将NPU利用率从30%提升至82%,帧率显著提高至61.2FPS。文章还提供了环境配置、代码实现及性能对比数据,助力开发者高效部署AI模型。

weixin_29034963的博客 340

Boost解析xml——xml写入

1 &lt;?xml version="1.0" encoding="utf-8"?&gt; 2 &lt;Config&gt; 3 &lt;Item name="IP测试报告2017-10-24 09-54-31"&gt; 4 &lt;ChildItem name="Date" desc="" datatype =&q

heshaai6843的博客 817

TX 的 LOL(Local Oscillator Leakage,本振泄露)

项目内容LOL 是什么本振残留在 TX 输出中心频率上的杂散主要原因IQ 失衡、硬件不完美、零中频架构影响杂散、干扰、性能劣化、安全问题解决方法初始化校准 + 跟踪校准(AD9371 支持)检测手段频谱仪、回环检测、ADC ILA 抓取。

weixin_41230430的博客 2045

boost库读写xml

#include #include #include void  RiskParams::LoadConfigFromFile() { CString strCurAppPath; XTradeUtil::GetCurrentAppPath(strCurAppPath); char  szConfigPath[MAX_PATH]; memset(szConfi

freedom8531的专栏 712

VSCode+Keil高效开发STM32:Keil Assistant插件配置全攻略

本文详细介绍了如何通过VSCode的Keil Assistant插件,将Keil MDK的编译调试能力与VSCode的现代编辑体验相结合,打造高效的STM32开发环境。文章涵盖了从环境配置、工程导入、智能提示设置到与STM32CubeMX协同工作的全流程攻略,旨在解决Keil编辑器效率低下的痛点,大幅提升嵌入式开发的编码与项目管理效率。

gold的博客 507

Windows10 使用Apple Studio Display显示器的设置

AppleStudioDisplay显示器购买花了近1.5wRMB,由于为windows台式机,显卡为NVIDAGTX-1660,而AppleStudioDisplay只有雷电接口,尝试了很多种转接方式,均以失败告终,最终使用贝尔金VR线成功,,附图如下这边也测试过NVIDARTX-2060Super、NVIDAGTX-1650显卡,都是能点亮的,NVIDA1650存在关机重启后黑屏,不稳定现象,2060也存在关机重启后不亮现象,后面发现1660s很稳定。...

爱意随风起,人生不可弃。 1万+

Boost读写xml

xml文件读写;xml文件高级用法,属性读写;复杂xml文件读写

柠檬野生菌的摆烂笔记 2330

LTE/NR中的相应cause场景【原创】

目录1.背景2.LTE EMM cause2.0 写在最前2.1 特殊处理的cause第一梯队第二梯队2.2 非特殊处理的cause3.NR cause 实网分析终端被拒等问题,经常遇到各类cause,其会对应不同的终端限制行为。查找已有资料后理解没有很深,自行总结本文用于梳理现象,如有错误敬请指正,转载请注明出处。 本文用于记录协议Ts 24.301及Ts 24.501中的cause及其对应行为。 已总结的cause值: 24.301中的cause分

2301_79567300的博客 3488

boost库读写XML Json文件[转]

boost库读写XML Json文件[转] 目录 boost库读写XML Json文件[转] boost库读写XML文件 构建xml示例 读取xml示例 修改xml示例 boost库读写Json文件 Boost中Json数据类型 简单的Json示例 简单Json解析示例 较复杂的Json示例 较复杂的Json读取 boost库读写XML文件 参考:《Boost学习之读写xml文件》 引入头文件: #include <boost/property_tree/pt..

baidu_41388533的博客 807

uniapp - 使用 <video> 播放视频黑屏,浏览器控制台报错: DOMException: The element has on supported sources.(详细完美解决方案)

uniapp video 视频播放黑屏,uniapp 报错DOMException: The element has on supported sources.,uniapp如何解决DOMException: The element has on supported sources.,uniapp使用video标签无法播放视频出现黑屏问题处理,uniapp解决video视频黑屏显示0秒,并且浏览器报错DOMException: The element has on supported sources.,un

✅ 精选推荐文章 7054

116、影像质量主观评价方法论:标准场景与专家判读

本文探讨了影像质量主观评价的方法论,强调标准场景构建和专家判读体系的重要性。作者基于15年行业经验指出,仅靠客观指标无法保证观感质量,提出四类标准场景(灰阶、肤色、纹理、动态)的构建原则和四种专家判读维度(通透性、干净度、自然感、流程化)。文章揭示了主观评价中的常见误区,包括光源单一性、个人判读偏差、显示设备影响等,并建议建立多专家交叉验证机制和主观评价数据库。最后强调主观评价是可标准化的专业技术,需要将人眼感知转化为可追溯的技术参数。

sundong_81的博客 38

c++用boost的property_tree库来操作xml配置文件

<br />property_tree用的 XML 解析器是 RapidXML,深入研究一下它还是有好处的。<br /> <br />有了property_tree库,c++上读写xml配置文件也变得异常轻松了。(开始时很怀念c#里的app.config)。<br /> <br />由于我的项目用的很简单的配置,所以我只是参考了property_tree的例子就okay了,property_tree属于serialization ,我编译了该库,发现编译后125M大,很大呀。<br /> <br />下面是

懒人的技术笔记 8160

小论文/大论文必备| YOLO26热力图可视化,支持8种常用热力图方法:GradCAM,GradCAMPlusPlus,XGradCAM,EigenCAM,HiResCAM等,助力小论文和大论文加分

本文介绍了如何为YOLO26模型添加热力图可视化功能,包括完整代码和使用教程。热力图能增强模型的可解释性,适用于论文中的实验对比和结果展示。文章提供了详细的代码实现,包含图像处理、热力图生成和结果可视化等功能,并指导用户如何创建Python文件、粘贴代码以及调整参数生成最佳热力图。通过设置不同层号,用户可以灵活控制热力图效果,最终结果将保存在指定文件夹中。

Ai缝合怪、助力小伙伴高效发论文 491

C++编译Boost库读写和解析JSON文件和XML文件(2023.5.14)

Boost源码编译后解析JSON文件和XML文件,C++代码读写两类文件学习Boost库中的JSON模块 和 Property Tree模块,阅读、理解、探究和编译源码,受益匪浅

I have a dream, here my dreams come true! 4003

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

Boost.xml_parser读写内容简单的Xml

//范例如下,注释随代码#include &lt;iostream&gt; #include &lt;string&gt; #include &lt;map&gt; using namespace std; #include &lt;boost/property_tree/ptree.hpp&gt; #include &lt;boost/property_tree/xml_p...

KnightOnHorse的博客 989

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

Boost学习之XML解析

很久以前为了解析正则表达式接触的boost,最近项目中需要用到xml存贮数据,于是想到boost关于xml的支持。于是研究了下,发现boost对于xml的支持还是比较方便的,在boost自带的例子当中,有对xml的读写操作。本文里的例子更简单,仅仅是把对应的对象写入xml,再读出来复原,但是由此可以看出boost对xml读写的理念。在boost中,只要定义一个类,实现serialize

kukukala的专栏 2838

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

Boost库中Boost.PropertyTree使用和实战示例

Boost.PropertyTree 是一个轻量级、跨格式(JSON / XML / INI / INFO)配置数据管理库,特别适合。

qq_36812406的博客 1200

基于boost简单读写xml文件笔记

头文件: #ifndef BOOSTXMLUTIL_H #define BOOSTXMLUTIL_H #include #include #include #include #include #include #include using namespace std; using namespace boost::property_tree; class BoostXmlUtil

大鹏的专栏 6854

boost 解析 xml 文件

boost 解析 xml 文件 经试验证明,boost 库中xml 解析库对中文支持不好,解析出来是乱码

3495

使用boost库读写XML文件

原文地址:http://www.boost.org/doc/libs/1_61_0/doc/html/property_tree/tutorial.html #include #include #include #include #include #include #include namespace pt = boost::property_tree

zxw_tiantan的博客 1780

基于boost.propertytree的XML文件读写类

boost.propertytree是boost一个用于格式文本读写的库,可以读写XML、json之类的,这个库不需要编译,直接引入它的头文件就可以了。我用它的ptree写了一个读写XML配置文件的类,因为它本身的写XML格式有点问题,所以写文件部分重写了一下。 MVXMLConfig.h #ifndef _MVXMLCONFIG_H_ #define _MVXMLCONFIG_H_ #d

yourwonder的专栏 1521
上一篇: unity 中 ExecuteInEditMode
下一篇: 几何方程
不如学也
博客等级 码龄12年 22粉丝 136原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值