C JSON是一種輕量級(jí)的數(shù)據(jù)交換格式,在大多數(shù)情況下都被廣泛使用。在我們的應(yīng)用程序中,我們可能需要處理JSON數(shù)據(jù)。在處理JSON數(shù)據(jù)時(shí),可能需要修改或添加數(shù)據(jù)。本文將重點(diǎn)介紹使用C JSON進(jìn)行數(shù)據(jù)增加和修改的方法。
//首先我們需要引入 cJSON.h 頭文件 #include//創(chuàng)建一個(gè)JSON字符串 char *json_str = "{\"name\":\"Tom\",\"age\":23,\"gender\":\"Male\"}"; //解析JSON字符串為CJSON對(duì)象 cJSON *json_obj = cJSON_Parse(json_str); //修改CJSON對(duì)象的值 cJSON *age = cJSON_GetObjectItem(json_obj, "age"); age->valueint = 24; //增加CJSON對(duì)象的值 cJSON_AddStringToObject(json_obj, "hobbies", "Swimming"); //將CJSON對(duì)象轉(zhuǎn)為JSON字符串 char *new_json_str = cJSON_Print(json_obj);
我們來解釋一下上面的代碼:
首先,我們使用cJSON_Parse()函數(shù)將JSON字符串解析為cJSON對(duì)象。
我們通過cJSON_GetObjectItem()函數(shù)獲取json_obj中名稱為"age"的值,該函數(shù)會(huì)返回一個(gè)指向cJSON對(duì)象的指針。我們使用age->valueint = 24;語句修改該值。
使用cJSON_AddStringToObject()函數(shù)向json_obj中添加一個(gè)新的屬性,名稱為"hobbies",值為"Swimming"。
最后,我們使用cJSON_Print()函數(shù)將cJSON對(duì)象轉(zhuǎn)化為JSON字符串。
有了上述的代碼實(shí)例,我們可以輕松地實(shí)現(xiàn)JSON數(shù)據(jù)的修改和增加。請(qǐng)注意,在更復(fù)雜的數(shù)據(jù)結(jié)構(gòu)中,您需要更多的代碼來增加或修改JSON數(shù)據(jù)。但是,使用C JSON庫(kù),您可以輕松地操作JSON數(shù)據(jù)。