首先,这是一个非常广泛的问题,当我要求社区为我编写我的代码时,它可能会出现。这不是我的意图,但我是如此迷失,我不知道如何提供足够的信息。
我正在尝试使用由Dave编写的cJSON库,我发现这对于我的嵌入式设备用于JSON解析和编写非常有用。
读取以下JSON数组
{
"name": "Jack",
"types":[23,56,78],
"format": {
"type": "rect",
"width": 1920, }
}。。并解析使对象使用此方法的方法。
cJSON *format = cJSON_GetObjectItem(json,"format");
int framerate = cJSON_GetObjectItem(format,"width")->valueint; 但是我不能解析键“名称”和对象简单的键值,
我试过这个
cJSON *array = cJSON_GetArrayItem(json,"types");
int value = cJSON_GetArrayItem(format1,1)->valueint;但是没有工作,如何解析数组对象和简单的键值..。
发布于 2017-05-30 12:50:19
我认为JSON元素应该尊重key:value格式。
{
"name": "Jack",
"types":[{"type" : 23}, {"type" : 56}, {"type":78}],
"format": {
"type": "rect",
"width": 1920, }
}发布于 2017-11-01 07:44:48
你的儿子很好。您可以在cJSON中遍历值数组:
cJSON * array = cJSON_GetObjectItem(json, "types");
for (i = 0 ; i < cJSON_GetArraySize(array) ; i++)
{
printf("%d ",cJSON_GetArrayItem(array, i)->valueint);
}将打印
23 56 78https://stackoverflow.com/questions/23369799
复制相似问题