Json(JavaScript Object Notation)是一種輕量級的數據交換格式,具有易讀性,易編寫、易解析等特點,因此受到廣泛的支持和應用。在C語言的開發中,我們也可以使用Json來進行數據交換,這里我們介紹一下C中如何使用Json來寫數據。
#include <stdio.h> #include <jansson.h> int main() { json_t *root = json_object(); //創建一個json對象 json_t *array = json_array(); //創建一個json數組 json_object_set_new(root, "name", json_string("小明")); //向json對象添加屬性 json_array_append_new(array, json_integer(18)); //向json數組添加元素 json_array_append_new(array, json_string("男")); json_object_set_new(root, "info", array); //向json對象添加屬性 char *str = json_dumps(root, JSON_ENCODE_ANY); //將json對象轉為字符串 printf("%s\n", str); //輸出json字符串 json_decref(root); //釋放json對象內存 free(str); //釋放json字符串內存 return 0; }
在上面的代碼中,我們首先通過調用json_object()函數來創建了一個json對象,隨后又通過json_array()函數來創建了一個json數組。接著我們調用json_object_set_new()函數向json對象添加了一個String類型的屬性"name"和一個Array類型的屬性"info",其中Array類型的"info"屬性又通過調用json_array_append_new()函數添加了兩個元素,一個Integer類型的18和一個String類型的"男"。最后我們使用json_dumps()函數將json對象轉為字符串并輸出。需要注意的是,在使用完json對象后我們需要使用json_decref()函數進行內存回收,這樣可以提高程序的效率。