JSON(JavaScript Object Notation)是一種輕量級數據交換格式,它以文本為基礎,可以被多種編程語言解析和生成,非常適合互聯網數據交互。在C語言中,我們可以使用一些庫函數來組裝和解析JSON數據。
以下是一個使用C語言組裝JSON數據的例子:
#include <stdlib.h> #include <stdio.h> #include <string.h> #include <jansson.h> int main() { json_t *root; json_t *data; json_t *array; json_error_t error; root = json_object(); data = json_object(); array = json_array(); json_object_set_new(data, "name", json_string("張三")); json_object_set_new(data, "age", json_integer(28)); json_object_set_new(data, "gender", json_string("男")); json_array_append_new(array, json_string("basketball")); json_array_append_new(array, json_string("football")); json_object_set_new(root, "code", json_integer(200)); json_object_set_new(root, "msg", json_string("success")); json_object_set_new(root, "data", data); json_object_set_new(root, "hobby", array); char *result = json_dumps(root, JSON_INDENT(4)); printf("%s\n", result); json_decref(root); free(result); return 0; }
在這個例子中,我們使用了jansson庫來創建JSON對象和數組。首先,我們創建一個json_t類型的root對象,然后為其添加三個屬性:code、msg和data。其中,data是一個json_t類型的對象,它又有三個屬性:name、age和gender,分別對應一個字符串類型、一個整形類型和一個字符串類型的值。hobby是一個json_t類型的數組,其中包括了兩個字符串類型的值,分別表示“籃球”和“足球”。
最后,我們使用json_dumps函數將root對象轉換成JSON格式的字符串,并將這個字符串輸出到控制臺。在轉換的過程中,我們使用了JSON_INDENT(4)參數來指定輸出時的縮進。
通過以上示例,我們可以看到使用C語言來組裝JSON數據也是非常方便的。而jansson庫也是一個非常優秀的JSON處理庫,可以幫助我們更輕松地完成JSON數據的解析和生成。如果您希望進行更多的JSON操作,可以嘗試使用jansson庫進行練習。
上一篇c# json 使用