在 C 語言開發(fā)中,我們經(jīng)常需要生成 JSON 格式的數(shù)據(jù),這時(shí)候我們可以使用 C 語言提供的 json-c 庫。它是一個(gè)輕量級(jí)的、可移植的 C 語言 JSON 解析器和生成器。
下面是一個(gè)生成 JSON 數(shù)組的示例代碼:
#include#include #include int main() { struct json_object *my_array, *my_item; my_array = json_object_new_array(); //創(chuàng)建一個(gè) JSON 數(shù)組 //往數(shù)組中添加元素 my_item = json_object_new_string("item1"); json_object_array_add(my_array, my_item); my_item = json_object_new_int(2); json_object_array_add(my_array, my_item); my_item = json_object_new_boolean(1); json_object_array_add(my_array, my_item); my_item = json_object_new_double(3.14); json_object_array_add(my_array, my_item); printf("%s\n", json_object_to_json_string(my_array)); //將 JSON 數(shù)據(jù)轉(zhuǎn)換為字符串輸出 json_object_put(my_array); //釋放資源 return 0; }
運(yùn)行程序后會(huì)輸出以下 JSON 字符串:
["item1",2,true,3.140000]
上述代碼使用了 json-c 提供的 json_object_new_* 函數(shù)來創(chuàng)建不同類型的 JSON 元素,然后通過 json_object_array_add 函數(shù)將它們添加到 JSON 數(shù)組中。
最后使用 json_object_to_json_string 將 JSON 數(shù)據(jù)轉(zhuǎn)換為字符串并輸出,使用 json_object_put 函數(shù)釋放資源。