在C語(yǔ)言中,修改JSON值需要使用JSON解析庫(kù)和相關(guān)函數(shù)。JSON解析庫(kù)可以將字符串轉(zhuǎn)換為JSON對(duì)象,然后使用相關(guān)函數(shù)對(duì)JSON對(duì)象進(jìn)行操作。
// 示例代碼 #include#include #include #include "cJSON.h" int main() { char *json_str = "{\n \"name\": \"Tom\",\n \"age\": 18,\n \"gender\": \"male\"\n}"; cJSON *json = cJSON_Parse(json_str); cJSON *obj = cJSON_GetObjectItem(json, "age"); obj->valueint = 20; char *new_json_str = cJSON_Print(json); printf("%s\n", new_json_str); cJSON_Delete(json); free(new_json_str); return 0; }
首先需要引入相關(guān)庫(kù),在代碼中我們使用了cJSON庫(kù)。然后定義json_str字符串表示JSON數(shù)據(jù),利用cJSON_Parse將其轉(zhuǎn)換為JSON對(duì)象。接著,使用cJSON_GetObjectItem獲取需要修改的JSON值,并將其修改為20。最后,使用cJSON_Print將修改后的JSON對(duì)象轉(zhuǎn)換為字符串并打印出來,最終釋放內(nèi)存。