如何创建和填充jsoncpp数组(jsoncpp.sourceforge)

时间:2018-06-01 12:53:13

标签: c++ arrays jsoncpp

我正在尝试创建一个json cpp数组,并用std :: vector中的数据填充它。

我的代码看起来像这样

void
Box_20::BuildCommitUploadPostData(const PartInfoColl& partColl)
{
    Json::Value parts;
    parts["parts"] = Json::arrayValue;

    int idx = 0;

    for (const auto& p : partColl) {

        Json::Value partInfo;

        partInfo["part_id"] = p.partId;
        partInfo["offset"] = p.offset;
        partInfo["size"] = p.size;

        parts[idx]["part"] = partInfo;
        idx++;
    }

    /// do more stuff here
}

然而,当我跑它时,它会爆炸。

我可以看到我在这里做错了什么。

1 个答案:

答案 0 :(得分:1)

这很有用。

void DoSOmeJsonStuff(const PartInfoColl& partColl)
{
    Json::Value parts;

    int idx = 0;

    for (const auto& p : partColl) {

        Json::Value partInfo;

        partInfo["part_id"] = p.partId;
        partInfo["offset"] = p.offset;
        partInfo["size"] = p.size;

        parts[idx]["part"] = partInfo;
        idx++;
    }

    Json::Value root;
    root["parts"] = parts;

    /... 
}