boost::property_tree::ptree 对简单的json处理我觉得还可以,对于数组的处理网上有些代码可能不适合新版本的boost。比如push_back(); 第二个参数很多代码都是字符串,可是我目前使用的代码要求第二个参数必须是boost::property_tree::ptree,如果你用字符串报错,那么可以试试我的方法。
头文件
#include <boost/property_tree/ptree.hpp>
#include <boost/property_tree/json_parser.hpp>
创建json 数组
boost::property_tree::ptree array;
boost::property_tree::ptree pt1;
pt1.put("", "xhh");
boost::property_tree::ptree pt2;
pt1.put("", "cy");
array.push_back(std::make_pair("",pt1));
array.push_back(std::make_pair("",pt2));
解析json 数组
boost::property_tree::ptree nameItem;
for (boost::property_tree::ptree::iterator it = array.begin(); it != array.end(); ++it)
{
nameItem = it->second;
std::cout<<nameItem.get_value<std::string>()<<std::endl;
}
版权声明:本文为GengWenhui123原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。