在進行Web開發中,常常需要解析JSON數據。C語言中,使用json-c來進行JSON解析十分方便快捷。以下是一篇C JSON解析的demo。
#include <stdio.h>#include <json-c/json.h>int main() { char *json_string = "{\"name\":\"張三\",\"age\":20,\"gender\":\"male\"}"; struct json_object *json_obj = json_tokener_parse(json_string); struct json_object *name_obj; struct json_object *age_obj; struct json_object *gender_obj; json_object_object_get_ex(json_obj, "name", &name_obj); json_object_object_get_ex(json_obj, "age", &age_obj); json_object_object_get_ex(json_obj, "gender", &gender_obj); printf("Name: %s\n", json_object_get_string(name_obj)); printf("Age: %d\n", json_object_get_int(age_obj)); printf("Gender: %s\n", json_object_get_string(gender_obj)); json_object_put(json_obj); return 0; }
在代碼中,我們使用了json-c庫中的json_tokener_parse函數來將JSON字符串轉化為json_object類型的對象。然后,我們通過json_object_object_get_ex函數來獲取JSON對象中的各個屬性,最后通過json_object_get_xxx函數獲取其對應的值。最后,記得使用json_object_put函數釋放我們創建的JSON對象。