通過使用C語言,我們可以方便的查出數(shù)據(jù)組中的JSON數(shù)據(jù)。JSON是JavaScript Object Notation的簡(jiǎn)稱,它是一種常用的輕量級(jí)數(shù)據(jù)交換格式。
下面是一個(gè)使用C語言查找數(shù)據(jù)組中JSON的示例:
#include <stdio.h> #include <string.h> #include <jansson.h> int main() { char *json_string = "{\"name\":\"Tom\",\"age\":20}"; json_t *root; json_error_t error; root = json_loads(json_string, 0, &error); if(!root) { fprintf(stderr, "json error on line %d: %s\n", error.line, error.text); return 1; } json_t *name, *age; const char *name_str; int age_int; /* 獲取名字 */ name = json_object_get(root, "name"); name_str = json_string_value(name); printf("name: %s\n", name_str); /* 獲取年齡 */ age = json_object_get(root, "age"); age_int = json_integer_value(age); printf("age: %d\n", age_int); json_decref(root); /* 減少引用計(jì)數(shù) */ return 0; }
上面的代碼中,我們創(chuàng)建了一個(gè)JSON字符串,并將其加載到j(luò)son_t類型的root結(jié)構(gòu)體中。然后,我們通過json_object_get()函數(shù)來獲取名字和年齡字段,并用json_string_value()和json_integer_value()函數(shù)將它們轉(zhuǎn)換為相應(yīng)的字符串和整數(shù)值。
最后,我們使用json_decref()函數(shù)來減少引用計(jì)數(shù)和釋放內(nèi)存。