首页 > 解决方案 > C++ 处理匿名 JSON 数据数组

问题描述

我有以下匿名 JSON 数据数组,并使用 boost 属性树来读取数据。我能够读取数据并想知道是否有更好的使用 boost 属性树来解析数据。

这是数据集

[{"id": "1","timestamp": 1509493641,"heartrate": 72},
 {"id": "2","timestamp": 1509493642,"heartrate": 74}]

这是提取数据的 I 代码,它可以工作。

// boost library headers
#include <boost/property_tree/ptree.hpp>
#include <boost/property_tree/json_parser.hpp>
#include <boost/algorithm/string/erase.hpp>

int main()
{
    // Short alias for this namespace
    namespace pt = boost::property_tree;
    // read the JSON array data using boost property tree
    pt::ptree jsonData;

// Load the json file in this ptree
pt::read_json(inputFile, jsonData);

for(auto v = jsonData.begin(); v != jsonData.end(); ++v) 
{
    const std::string id = v->second.get_child("id").get_value<std::string>();
    const int heartrate= v->second.get_child("heartrate").get_value<int>();
}
return 0;

}

使用 boost 属性树库还有其他更好的方法吗?

标签: arraysjsonc++11boost-propertytree

解决方案


推荐阅读