如何将值数组从 json 文件读取到 c++ 数组

How to read an array of values from json file to c++ array

本文关键字:数组 文件 读取 c++ json      更新时间:2023-10-16

我有一个带有值和值数组的sample.json。我目前正在使用 Json 库来解析 json 文件并将内容读入C++代码中。我知道如何读取值,但不确定是否读取数组

下面是 sample.json 文件的内容。

"steering_facts" :
{
    "SteerPolynomial": [0.0, 0.0, -0.0006148, 0.025, 16.24, -0.3823],
    "SteerRatio"     : 0.0
}

在这里,我可以在以下代码的帮助下阅读"SteerRatio"。

static Json::Value  jsonValues;
if (jsonValues.isMember("steering_facts")){
    float steerRatio = jsonValues["steering_facts"]["SteerRatio"].asFloat();
}

但不确定如何读取转向多项式数组。

你可以通过以下方式编写。

static Json::Value  jsonValues;
if (jsonValues.isMember("steering_facts")){
    float steerRatio = jsonValues["steering_facts"]["SteerRatio"].asFloat();
    const Json::Value mynames = jsonValues["steering_facts"]["SteerPolynomial"];
    for ( int index = 0; index < mynames.size(); ++index )
    {
        float poli = mynames[index].asFloat();
    }
}