隨著互聯網的發展,JSON格式越來越受到開發者們的青睞。它不僅具有輕量級、易讀易寫等特點,還可以方便地與不同編程語言進行數據交換。本文將介紹如何在C語言中將list轉換成JSON格式。
#include <stdio.h> #include <stdlib.h> #include <jansson.h> int main() { // 創建一個list json_t *list = json_array(); json_t *person1 = json_object(); json_object_set_new(person1, "name", json_string("張三")); json_object_set_new(person1, "age", json_integer(25)); json_array_append_new(list, person1); json_t *person2 = json_object(); json_object_set_new(person2, "name", json_string("李四")); json_object_set_new(person2, "age", json_integer(30)); json_array_append_new(list, person2); // 將list轉換成JSON格式 char *json_str = json_dumps(list, JSON_INDENT(4)); printf("%s\n", json_str); // 釋放內存 json_decref(list); free(json_str); return 0; }
在上述代碼中,我們首先使用json_array()函數創建了一個list。之后,我們又使用json_object_set_new()函數為list中的每個元素(這里為兩個人名字和年齡)添加了鍵值對。接下來,我們使用json_array_append_new()將兩個元素添加到list中。
最后,我們使用json_dumps()函數將list轉換成JSON格式,其中JSON_INDENT(4)參數表示采用縮進格式(4個空格)進行輸出。轉換完成后,我們將輸出字符串打印在控制臺上。需要注意的是,轉換完成后需要使用json_decref()函數釋放list對象占用的內存。