C JSON是一種用于讀取和解析JSON數(shù)據(jù)格式的工具。JSON(JavaScript Object Notation)是一種輕量級的數(shù)據(jù)交換格式,常用于Web應(yīng)用中傳輸數(shù)據(jù)。使用C JSON可以輕松地讀取JSON格式文件,并可將其轉(zhuǎn)換為C語言中的結(jié)構(gòu)體。
#include <stdio.h> #include <jansson.h> int main(){ char *json_string = "{\"name\": \"John Smith\", \"age\": 28, \"city\": \"New York\"}"; json_t *root; //定義JSON對象 json_error_t error; //定義JSON錯誤對象 root = json_loads(json_string, 0, &error); //加載JSON文件內(nèi)容到JSON對象 if (!root){ fprintf(stderr, "error: on line %d: %s\n", error.line, error.text); return 1; } json_t *name, *age, *city; const char *name_str, *city_str; int age_int; //獲取JSON對象中的鍵值 name = json_object_get(root, "name"); age = json_object_get(root, "age"); city = json_object_get(root, "city"); //轉(zhuǎn)換為相應(yīng)C類型 name_str = json_string_value(name); age_int = json_integer_value(age); city_str = json_string_value(city); //輸出獲取的鍵值 printf("Name: %s\n", name_str); printf("Age: %d\n", age_int); printf("City: %s\n", city_str); json_decref(root);//釋放JSON對象 return 0; }
以上代碼中,程序通過定義JSON對象root來存儲JSON文件中的數(shù)據(jù),使用json_loads函數(shù)加載JSON文件內(nèi)容到JSON對象中。當(dāng)加載失敗時(shí),程序?qū)⑤敵鲥e誤信息。接著,程序使用json_object_get函數(shù)獲取JSON對象中的鍵值,并通過json_string_value或json_integer_value函數(shù)將其轉(zhuǎn)換為對應(yīng)的C類型。最后,程序輸出獲取的鍵值,并使用json_decref函數(shù)釋放JSON對象。
上一篇vue 獲取圖片路徑
下一篇html屏蔽兼容模式代碼