RapidJson对象数组

时间:2015-10-24 07:14:23

标签: rapidjson

我有一个@media (min-width: 100px) and (max-width: 950px){ sidebar__area:last-child .widget:last-child, .sidebar__area.is_stuck .widget:last-child{ display:none; } 文件,其中包含以下信息。

它正在使用对象数组。我想检索“TetaInfo”对象的名称和“cad”对象的值。

我该怎么做?

JSON

2 个答案:

答案 0 :(得分:1)

我并不完全了解你的需要。但是您可以尝试在RapidJSON中使用新添加的JSON Pointer API,这可以简化代码并检查路径的有效性。

if (Value* v = GetValueByPointer(d, "/objects/BOOT/objects/ModInfo/objects/TetaInfo/objects/Cad"))
{
    std::cout << (*v)["data"].GetString();
    // ...
}
else {
    // Unable to resolve the value of the pointer. Handle error.
}

GetValueByPointer()在文档中无法解析指针时返回null。

答案 1 :(得分:0)

d [&#34;对象&#34;] [&#34; BOOT&#34;] [&#34;对象&#34;] [&#34; modinfo命令&#34;] [&#34;对象& #34;] [&#34; TetaInfo&#34;] [&#34;对象&#34;] [&#34; Cad&#34;] =&#34;

std :: string temp2 = d [&#34; objects&#34;] [&#34; BOOT&#34;] [&#34; objects&#34;] [&#34; ModInfo&#34;] [&#34;对象&#34;] [&#34; TetaInfo&#34;] [&#34;对象&#34;] [&#34; Cad&#34;]。GetString(); printf(&#34; \ ntemp2 ===%s&#34;,temp2.​​c_str());