在C語言中,提供了一個方便修改json鍵名的函數(shù)。如果你需要修改json對象中的某個鍵的名稱,可以使用該函數(shù)來實現(xiàn)。下面是簡單的示例:
#include <stdio.h> #include <stdlib.h> #include <string.h> #include <json-c/json.h> int main() { char *json_str = "{\"name\": \"張三\", \"age\": 20}"; struct json_object *json_obj = json_tokener_parse(json_str); // 將name鍵的名稱修改為username const char *old_key = "name"; const char *new_key = "username"; struct json_object *value; value = json_object_object_get(json_obj, old_key); json_object_object_del(json_obj, old_key); json_object_object_add(json_obj, new_key, value); // 將json對象重新轉(zhuǎn)換為json字符串并輸出 const char *new_json_str = json_object_to_json_string(json_obj); printf("%s\n", new_json_str); return 0; }
上述代碼中,將json字符串解析為json對象,并使用json_object_object_get()
函數(shù)獲取待修改的鍵的值,使用json_object_object_del()
函數(shù)刪除原先的鍵,最后使用json_object_object_add()
函數(shù)添加新的鍵和值。最后,將json對象轉(zhuǎn)換為json字符串并輸出。
上一篇c 修改json的屬性值
下一篇ELK怎么json返回