JSON是一種輕量級的數據交換格式,而C語言是一種廣為使用的編程語言。在實際開發中,我們經常需要使用C來修改JSON的屬性值。下面是一個簡單的示例:
#include <stdio.h> #include <stdlib.h> #include <string.h> #include <ctype.h> #include <jansson.h> int main() { char *json_text = "{\"name\":\"Lucy\",\"age\":20,\"height\":170}"; json_error_t error; json_t *root = json_loads(json_text, JSON_DECODE_ANY, &error); if (!root) { fprintf(stderr, "JSON解析失敗!\n"); return EXIT_FAILURE; } /* 修改height屬性值 */ json_t *height = json_object_get(root, "height"); if (json_is_integer(height)) { int new_height = 175; json_integer_set(height, new_height); } /* 輸出修改后的JSON數據 */ char *new_json_text = json_dumps(root, JSON_ENCODE_ANY); printf("%s\n", new_json_text); /* 釋放內存 */ json_decref(root); free(new_json_text); return EXIT_SUCCESS; }
這段代碼首先加載一個JSON字符串,并將其解析為一個json_t類型的對象。接著,使用json_object_get函數獲取height屬性對應的json_t對象,并判斷其類型是否為整型。如果是,就使用json_integer_set函數將其值修改為175。
最后,使用json_dumps函數將修改后的JSON對象轉換為字符串,并輸出到控制臺。最后,釋放JSON對象占用的內存空間。
上一篇el表達式取json
下一篇python 條件為空