0
我试图解析JSON文件内的阵列,像这样解析一个JSON阵列YAJL
{
"val": [5,6]
}
使用下面的代码,适于从包含在库中的parse_config.c
,
char errbuf[1024];
yajl_val node;
long length;
char *file_data = read_file(&length, "conf.json");
node = yajl_tree_parse((const char *) file_data, errbuf, sizeof(errbuf));
const char *path[] = {"val", (const char *) 0};
yajl_val v = yajl_tree_get(node, path, yajl_t_number);
if (v)
printf("Node found.\n");
else
printf("Can't find node %s\n", path[0]);
yajl_tree_free(node);
free(file_data);
此方法对于单个值成功,例如
{
"val": 5
}
(由成功的我的意思是v
填充并打印Node found.
),但不用于该阵列。我需要做什么不同的数组来解析?
谢谢。
'{“VAL” = 5}'是不是有效的JSON。 –
@LeeDanielCrocker oops,只是在输入问题时出错。现在修复,谢谢指出。 – Sam