0
我的JSON文件看起来像这样:为什么JSON对象不是数组?
{
"strings": {
"keyone": "abc",
"keytwo": "def",
}
}
使用C++,
const Json::Value strings = root["strings"];
for (int index = 0; index < strings.size(); index++)
{
std::cout << strings.isArray() << std::endl;
std::cout << strings.get(index, "ERROR") << std::endl;
}
strings.IsArray()
返回0,说这是不是一个数组。而第二行strings.get(index, "ERROR)"
,执行时只是崩溃,可能是因为我不使用它时就像一个数组。
所以我假设字符串只是一个字符串,而不是一个数组。我怎样才能使它成为一个数组对象?
您使用的是什么JSON库? – 2012-07-07 02:11:17
为什么**不**以上的JSON包含JSON数组? JSON类型(数组,对象,字符串等)都是独特的,不会“共享”祖先(与JavaScript数组和JavaScript对象不同)。大多数实现倾向于这样*不允许将JSON对象视为JSON数组(并且这样做实际上会违反此类结构的JSON保证)。 – 2012-07-07 02:21:58
@AndréCaron我正在使用JsonCpp。 – 2012-07-07 02:24:32