C語言中,將JSON轉化為list(列表)集合,需要使用第三方庫進行解析。目前常用的JSON解析庫有cJSON和Jansson。
以下是使用cJSON庫將JSON字符串轉化為list集合的代碼示例:
#include "cJSON.h" #include#include int main() { char *json_str = "{\"name\":\"小明\",\"age\":20,\"gender\":\"male\"}"; cJSON *root = cJSON_Parse(json_str); // 解析JSON字符串 if (root) { if (cJSON_IsObject(root)) { // 判斷是否為對象 printf("姓名:%s\n", cJSON_GetObjectItem(root, "name")->valuestring); printf("年齡:%d\n", cJSON_GetObjectItem(root, "age")->valueint); printf("性別:%s\n", cJSON_GetObjectItem(root, "gender")->valuestring); } cJSON_Delete(root); // 釋放內存 } return 0; }
首先需要引入cJSON.h頭文件,然后定義要轉化的JSON字符串。
cJSON_Parse函數將JSON字符串解析為一個cJSON對象,如果解析失敗則返回NULL。
接著,需要使用cJSON_GetObjectItem函數獲取對象中的元素,并使用valuestring或valueint屬性獲取JSON值。
最后,使用cJSON_Delete函數釋放內存。
以上就是使用cJSON庫將JSON字符串轉化為list集合的方法。Jansson庫的使用方法類似,可以根據具體情況選擇。