C語言是一種廣泛使用的編程語言,常用于開發各種軟件應用。其中,合并兩個JSON對象是C語言開發中常見的需求。本文將介紹如何使用C語言合并兩個JSON對象。
#include <stdio.h> #include <stdlib.h> #include <string.h> #include <jansson.h> int main() { char *jsonStr1 = "{\"name\":\"John\",\"age\":30,\"city\":\"New York\"}"; char *jsonStr2 = "{\"name\":\"Doe\",\"age\":25}"; json_t *json1 = json_loads(jsonStr1, 0, NULL); json_t *json2 = json_loads(jsonStr2, 0, NULL); const char *key; json_t *value; void *iter1 = json_object_iter(json1); while(iter1) { key = json_object_iter_key(iter1); value = json_object_iter_value(iter1); json_object_set(json2, key, value); iter1 = json_object_iter_next(json1, iter1); } char *mergedStr = json_dumps(json2, JSON_INDENT(4)); printf("%s\n", mergedStr); json_decref(json1); json_decref(json2); return 0; }
上述代碼通過調用jansson庫實現了合并兩個JSON對象的功能。在代碼開始處,我們定義了兩個JSON字符串,分別表示兩個JSON對象。利用jansson庫提供的json_loads函數,我們可以將JSON字符串轉換成JSON對象。接著,我們通過調用json_object_iter函數實現迭代訪問第一個JSON對象中的鍵值對,并將其添加到第二個JSON對象中。最后,我們將合并后的JSON對象轉換成JSON字符串并輸出。
總之,C語言是一種強大的編程語言,可以用于開發各種各樣的應用程序。在處理JSON對象時,jansson庫提供了豐富的API函數,可以方便地實現JSON對象的合并等操作。
下一篇python 梅爾倒頻