2013-06-26 57 views
2

我使用RapidJSON解析JSON数据除我无法通过的成员工作如何循环:RapidJSON通过字符串数组循环?

{ 

"members":{ 
    "0":{ 
     "template":"this is member 1" 
    }, 
    "1":{ 
     "template":"this is member 2" 
    } 
} 
} 

我尝试以下 e_doc["members"][iString]["template"].GetString() 一个循环中与转换的环索引(i)到一个字符串,但它不认为它是一个字符串。

它的工作原理为:

你不是遍历数组
printf("%s", e_doc["members"]["0"]["template"].GetString()); 
printf("%s", e_doc["members"]["1"]["template"].GetString()); 
+0

您必须展示如何将整数转换为字符串。 – moswald

回答

7

有可能是一个小问题,但在一个对象。但是,最后代码是相似的。

const rapidjson::Value& membersObject = e_doc["members"]; 
for(rapidjson::Value::ConstMemberIterator it=membersObject.MemberBegin(); it != membersObject.MemberEnd(); it++) { 
    std::cout << it->value["template"].GetString(); 
}