JSON(JavaScript Object Notation) 是一種輕量級(jí)的數(shù)據(jù)交換格式,現(xiàn)已成為互聯(lián)網(wǎng)數(shù)據(jù)交換的常用格式。在C語言中,處理JSON需要用到相應(yīng)的庫函數(shù)。
其中,JSON-C是一種處理JSON數(shù)據(jù)的開源庫,提供了C語言中對JSON數(shù)據(jù)的解析和生成功能。
以下示例展示了JSON-C庫的使用方法:
#include <stdio.h> #include <stdlib.h> #include <json-c/json.h> int main() { //創(chuàng)建JSON對象 json_object *my_object = json_object_new_object(); //創(chuàng)建JSON數(shù)組 json_object *my_array = json_object_new_array(); //添加JSON數(shù)據(jù) json_object_object_add(my_object, "name", json_object_new_string("John")); json_object_object_add(my_object, "age", json_object_new_int(30)); json_object_array_add(my_array, json_object_new_int(1)); json_object_array_add(my_array, json_object_new_int(2)); json_object_array_add(my_array, json_object_new_int(3)); //將JSON對象和數(shù)組添加到父JSON對象中 json_object_object_add(my_object, "numbers", my_array); //將JSON對象轉(zhuǎn)為字符串 const char *my_json_string = json_object_to_json_string(my_object); //打印JSON字符串 printf("%s\n", my_json_string); //釋放JSON對象和數(shù)組 json_object_put(my_array); json_object_put(my_object); return 0; }
運(yùn)行以上代碼,可得到如下的JSON格式字符串:
{ "name": "John", "age": 30, "numbers": [1, 2, 3] }
通過這種方式,我們可以使用C語言處理JSON格式數(shù)據(jù)。