c語言中的json合并可以使用很多庫來實現,比如cJSON、Jansson等。下面是一份使用cJSON的代碼示例,將多個json合并成一個。
#include#include #include "cJSON.h" int main(void) { char *json_string1 = "{\"name\":\"apple\",\"price\":3.5}"; char *json_string2 = "{\"name\":\"banana\",\"price\":2.8}"; char *json_string3 = "{\"name\":\"orange\",\"price\":4.2}"; cJSON *json_obj1 = cJSON_Parse(json_string1); cJSON *json_obj2= cJSON_Parse(json_string2); cJSON *json_obj3 = cJSON_Parse(json_string3); cJSON *json_arr = cJSON_CreateArray(); cJSON_AddItemToArray(json_arr, json_obj1); cJSON_AddItemToArray(json_arr, json_obj2); cJSON_AddItemToArray(json_arr, json_obj3); char *json_string = cJSON_Print(json_arr); printf("%s", json_string); cJSON_Delete(json_obj1); cJSON_Delete(json_obj2); cJSON_Delete(json_obj3); cJSON_Delete(json_arr); return 0; }
該代碼首先定義了三個json字符串,分別表示三種水果的信息。然后使用cJSON_Parse將它們轉換為cJSON對象。接著,創建一個空的cJSON數組對象,添加前面定義的三個對象,最后使用cJSON_Print將合并后的json數據轉換成字符串,輸出到stdout。最后別忘了釋放申請的內存。