JSON是一種輕量級的數據交換格式,以易于人們閱讀和編寫的文本格式為基礎,常用于客戶端和服務器之間的數據傳輸。在C語言中,解析JSON字符串的libjson-c庫是一個非常強大和流行的選擇。
/* 使用libjson-c解析JSON字符串 */ #include#include int main() { char* json_string = "{\"name\": \"小明\", \"age\": 18}"; json_object* jobj = json_tokener_parse(json_string); json_object* name = NULL; json_object* age = NULL; /* 從JSON對象中獲取數據 */ json_object_object_get_ex(jobj, "name", &name); json_object_object_get_ex(jobj, "age", &age); /* 輸出JSON對象的值 */ printf("Name: %s\n", json_object_get_string(name)); printf("Age: %d\n", json_object_get_int(age)); json_object_put(jobj); //釋放內存 return 0; }
代碼中首先聲明了需要解析的JSON字符串,然后使用json_tokener_parse()函數將其解析為一個JSON對象。可以使用json_object_object_get_ex()函數獲取JSON對象中的鍵值對,然后使用json_object_get_string()和json_object_get_int()函數分別取得name和age的值并輸出。
在使用完畢后,應該調用json_object_put()釋放JSON對象占用的內存。