欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

cjson 修改json值

林子帆2年前7瀏覽0評論

在處理json數據的過程中,我們常常需要修改其中的某個key的值,這時候就需要用到cjson庫了。

先看下面的例子:

cJSON *root = cJSON_Parse("{\"name\": \"Tom\", \"age\": 18}");
cJSON *name = cJSON_GetObjectItem(root, "name");
cJSON_Delete(name);
cJSON_AddStringToObject(root, "name", "Jerry");
char *new_json = cJSON_Print(root);
printf("%s\n", new_json); // 輸出:{"age":18,"name":"Jerry"}

在這個例子中,我們首先解析了一個json字符串,然后通過cJSON_GetObjectItem函數獲取了key為"name"的value,接著使用cJSON_Delete刪除了該value,最后用cJSON_AddStringToObject函數又新插入了一個值為"Jerry"的"name"。

其中,cJSON_AddStringToObject函數的第一個參數為需要添加元素的對象,第二個參數為需要添加元素的key,第三個參數為需要添加的元素值,具體函數定義如下:

cJSON_bool cJSON_AddStringToObject(cJSON * const object, const char * const string, const char * const value);

類似地,如果需要修改其他類型的值,如數字、數組或對象,只需使用相應的cJSON_Add...ToObject函數即可,詳細可見cjson的文檔。