使用 INI 文件提升属性树

Posted

技术标签:

【中文标题】使用 INI 文件提升属性树【英文标题】:Boost property tree with INI files 【发布时间】:2021-03-25 15:19:03 【问题描述】:

我正在使用 Boost 属性树类来读取和写入 MS Ini 文件。其中一个部分名称包含一个文字点作为字符串的一部分。没有等级制度。如何引用这个点?

[system-no.1]
acq=3

【问题讨论】:

【参考方案1】:

您只能通过使用替代分隔符创建路径:

Live on Coliru

#include <boost/property_tree/ini_parser.hpp>
#include <iostream>
using boost::property_tree::ptree;

int main() 
    ptree::path_type path("system=no.1#acq", '#');

    ptree pt;
    pt.put(path, 3);

    write_ini(std::cout, pt);

打印

[system=no.1]
acq=3

奖金

由于构造函数不明确,您可以缩写为:

pt.put("system=no.1#acq", '#', 3);

【讨论】:

以上是关于使用 INI 文件提升属性树的主要内容,如果未能解决你的问题,请参考以下文章

提升属性树性能

递归添加子树以提升属性树

递归添加子树以提升属性树

提升属性树 put/get DBL_MAX

c_cpp 提升读写ini文件

递归获取提升属性树中所有值的完整关键路径