Tag: boost propertytree

为什么提高属性树write_json保存一切为string? 有没有可能改变这一点?

我试图序列化使用boost属性树write_json,它将所有的东西保存为string,这不是数据是错误的,但我需要每次明确地投下他们,我想在别的地方使用它们。 (就像在Python或其他C ++ json(非boost)库) 这里是一些示例代码和我得到的取决于区域设置: boost::property_tree::ptree root, arr, elem1, elem2; elem1.put<int>("key0", 0); elem1.put<bool>("key1", true); elem2.put<float>("key2", 2.2f); elem2.put<double>("key3", 3.3); arr.push_back( std::make_pair("", elem1) ); arr.push_back( std::make_pair("", elem2) ); root.put_child("path1.path2", arr); std::stringstream ss; write_json(ss, root); std::string my_string_to_send_somewhare_else = ss.str(); 和my_string_to_send_somewhere_else是。 喜欢这个: { "path1" : { "path2" : [ { "key0" : "0", "key1" : "true" }, { "key2" […]

使用boost来序列化和反序列化json

我是新手到c++ 。 使用boost序列化和反序列化std::Map数据的最简单方法是什么? 我发现了一些使用PropertyTree例子,但是对于我来说却很模糊。

使用属性树在Boost中创buildJSON数组

我正在尝试使用boost属性树创build一个JSON数组。 该文档说:“JSON数组映射到节点。每个元素是一个空名称的子节点。 所以我想创build一个名称为空的属性树,然后调用write_json(…)来获取数组。 但是,文档不告诉我如何创build未命名的子节点。 我试过ptree.add_child("", value) ,但是这样会产生: Assertion `!p.empty() && "Empty path not allowed for put_child."' failed 文件似乎没有解决这一点,至less不以我能想出的任何方式。 谁能帮忙?