在C語言中讀取JSON并將其轉(zhuǎn)換為對象是一項非常重要的操作。JSON是一種輕量級數(shù)據(jù)交換格式,已經(jīng)被廣泛應(yīng)用于各種應(yīng)用程序和服務(wù)中。下面介紹一種C語言讀取JSON并轉(zhuǎn)換為對象的方法。
#include <stdio.h> #include <jansson.h> int main() { // JSON字符串 const char* json = "{\"name\":\"John\", \"age\":30, \"city\":\"New York\"}"; // 轉(zhuǎn)換為JSON對象 json_t* root = NULL; json_error_t error; root = json_loads(json, 0, &error); //獲取JSON對象的值 const char* name; int age; const char* city; json_unpack(root, "{s:s, s:i, s:s}", "name", &name, "age", &age, "city", &city); // 輸出結(jié)果 printf("name: %s\n", name); printf("age: %d\n", age); printf("city: %s\n", city); //釋放內(nèi)存 json_decref(root); return 0; }
上面的代碼示例展示了如何使用jansson庫讀取JSON并將其轉(zhuǎn)換為對象。通過調(diào)用json_loads方法,將JSON字符串轉(zhuǎn)換為JSON對象。然后使用json_unpack方法從JSON對象中獲取需要的值。最后,釋放內(nèi)存。