JSON是一種輕量級的數據交換格式,它使用文本格式進行數據交換。與XML相比,JSON更加簡潔,易于解析和生成。在C語言中,我們可以使用現成的庫來生成JSON數據,比如Jansson、json-c等。
下面我們就來介紹一下如何使用json-c庫來生成JSON數據。
#include <stdio.h> #include <stdlib.h> #include <json-c/json.h> int main() { //創建json對象 struct json_object *my_json = json_object_new_object(); //添加各種數據類型 json_object_object_add(my_json, "string", json_object_new_string("Hello World!")); json_object_object_add(my_json, "int", json_object_new_int(123)); json_object_object_add(my_json, "double", json_object_new_double(3.14)); json_object *my_array = json_object_new_array(); json_object_array_add(my_array, json_object_new_string("hello")); json_object_array_add(my_array, json_object_new_string("world")); json_object_object_add(my_json, "array", my_array); //將json對象轉換成字符串 const char *my_json_string = json_object_to_json_string(my_json); //輸出結果 printf("%s\n", my_json_string); return 0; }
在上面的代碼中,我們先使用json_object_new_object()函數創建了一個json對象,然后分別使用json_object_object_add()函數添加了字符串、整型、浮點型和數組類型的數據。
最后,我們使用json_object_to_json_string()函數將json對象轉換成字符串,并使用printf()函數輸出結果。