JSON(JavaScript Object Notation)是一種輕量級的數(shù)據(jù)交換格式,具有簡單性、可讀性和易于解析的特點。在C語言中,我們可以通過使用第三方庫來解析JSON數(shù)據(jù)格式。
#include <stdio.h> #include <jansson.h> int main() { const char *json_string = "{\"name\":\"Tom\", \"age\":20}"; json_error_t error; json_t *root = json_loads(json_string, 0, &error); if (!root) { fprintf(stderr, "error: on line %d: %s\n", error.line, error.text); return 1; } json_t *name_obj = json_object_get(root, "name"); json_t *age_obj = json_object_get(root, "age"); const char *name = json_string_value(name_obj); int age = json_integer_value(age_obj); printf("name: %s\n", name); printf("age: %d\n", age); json_decref(root); return 0; }
在上述代碼中,首先我們定義了一個JSON字符串,并通過調(diào)用json_loads函數(shù)將其解析為JSON對象。如果JSON解析失敗,則會返回一個錯誤對象并輸出錯誤信息。
接下來,我們通過調(diào)用json_object_get函數(shù)獲取對象中key值為"name"和"age"的值,并通過調(diào)用json_string_value和json_integer_value函數(shù)將其轉(zhuǎn)換為字符串和整數(shù)。
最后,我們在控制臺輸出解析后的結(jié)果,并通過調(diào)用json_decref函數(shù)釋放JSON對象的內(nèi)存。
上一篇c 如何讀取json字段
下一篇c 如何讀寫json文件