У меня есть json -файл с массивом данных, ключ: значение, и я хочу l oop и выбрать все имена из *
[ { "streamnr": 1, "name": "a �", "linktime": 0.000000 }, { "streamnr": 2, "name": "b �", "linktime": 0.000000 }, { "streamnr": 3, "name": "c �", "linktime": 0.000000 }, { "streamnr": 4, "name": "david", "linktime": 0.000000 }]
в c коде структуры Я читаю файл в буфер и анализирую
fread(buffer, sz , 1, fh);
json_object * jresult = json_object_new_array();
jresult = json_tokener_parse(buffer);
сейчас, если я oop json_array для json_objects, ie {struct 1}, {struct 2}, ... для выборки и извлеките имя.
json_object *val;
for ((int) i = 0; i < json_object_array_length(jresult); i++) {
val = json_object_array_get_idx(jresult, i);
//printf("strömnr [%d] = %s\n", i, json_object_to_json_string(val));
/* Loop through array of values */
printf( "Values:[%d] = %s \n", i, json_object_to_json_string( val ) );
// here I fail ????
printf("name : %s", val->name);
// this 'work' but include "streamnr":1 ... and I want to skip that
memcpy(&cell, (char *)json_object_to_json_string( val ), sizeof(CELL));
}
Любые хорошие идеи, как извлечь каждый ключ и значение обратно в структуру
struct fields{
string name;
double linktime;
}