json - 如何将 boost 属性树输出为 JSON 编码字符串?

标签 json boost boost-propertytree

有时,创建 JSON 编码字符串来表示和交换数据非常有用。 将 Boost 属性树编码为 JSON 字符串的最佳方式是什么?

最佳答案

以下是执行该任务的示例代码:

#include <boost/property_tree/ptree.hpp>
#include <boost/property_tree/json_parser.hpp>
#include <boost/optional.hpp>
#include <iostream>
#include <sstream>
#include <cstdlib>

int main()
{
    boost::property_tree::ptree pt;
    pt.put("Test", "string");
    pt.put("Test2.inner0", "string2");
    pt.put("Test2.inner1", "string3");
    pt.put("Test2.inner2", 1234);

    std::stringstream ss;
    boost::property_tree::json_parser::write_json(ss, pt);

    std::cout << ss.str() << std::endl;

    return 0;
}

使用 GCC 编译此代码:

g++ main.cpp -lboost_system -o SamplePT_JSON

这是预期的输出:

{
    "Test": "string",
    "Test2":
    {
        "inner0": "string2",
        "inner1": "string3",
        "inner2": "1234"
    }
}

关于json - 如何将 boost 属性树输出为 JSON 编码字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36868297/

相关文章:

python - 将列表转换为 json 对象

java - 单元测试 Jersey Restful Services

c++ - 要从 Boost 中删除用于分发的安全文件?

c++ - 将使用 CMake 的大型 C++ 项目编译为 WebAssembly

c++ - 在 boost::property_tree 中添加 boost::any 可能吗?

javascript - 解析 Node oracledb 的 JSON 结果

javascript - 是否可以在 ASP.NET MVC4 中使用一个 Controller 函数在 View 中返回两个数组?

c++ - 使用 Boost 更好的 XML 格式化?

visual-studio-2010 - 错误 LNK1104 : cannot open file 'libboost_system-vc100-mt-gd-1_55. 库

c++ - boost 属性树 : Where have my escape sequences gone in JSON String?