在C語言中,使用JSON格式可以非常方便地將數據進行表示和傳輸。下面是使用C語言進行JSON操作的方法:
#include <stdio.h> #include <jansson.h> int main() { json_t *root; json_error_t error; // 創建JSON對象 root = json_object(); json_object_set_new(root, "name", json_string("hello")); json_object_set_new(root, "age", json_integer(18)); // 將JSON對象轉換為字符串 const char *json_str = json_dumps(root, JSON_INDENT(4)); printf("%s\n", json_str); // 解析JSON字符串 json_t *parsed_root = json_loads(json_str, 0, &error); // 獲取JSON對象中的值 const char *name = json_string_value(json_object_get(parsed_root, "name")); int age = (int)json_integer_value(json_object_get(parsed_root, "age")); printf("name: %s, age: %d\n", name, age); // 釋放資源 json_decref(root); json_decref(parsed_root); free((void *)json_str); return 0; }
代碼中引入了頭文件"jansson.h",以及json_t和json_error_t兩個結構體類型。創建JSON對象可以使用json_object()函數,設置JSON對象的鍵值對則使用json_object_set_new()函數。將JSON對象轉換為字符串可以使用json_dumps()函數。解析JSON字符串可以使用json_loads()函數,獲取JSON對象中的值則使用json_string_value()和json_integer_value()函數。在最后,需要調用json_decref()函數釋放資源。