在C語言中,使用json加載數據是一種常見的方法。JSON(JavaScript Object Notation)是一種輕量級的數據交換格式,易于人閱讀和編寫,同時也易于機器解析和生成。本文將介紹C語言中使用json加載數據的格式。
#include <stdio.h>#include <jansson.h>int main() { char *json_string = "{ "name": "Tony", "age": 30, "city": "New York" }"; json_t *root; json_error_t error; root = json_loads(json_string, 0, &error); if(!root) { fprintf(stderr, "error:%s\n", error.text); return 1; } const char *name = json_string_value(json_object_get(root, "name")); int age = json_integer_value(json_object_get(root, "age")); const char *city = json_string_value(json_object_get(root, "city")); printf("Name:%s\nAge:%d\nCity:%s\n", name, age, city); json_decref(root); return 0; }
上述代碼是一個簡單的例子,它演示了如何使用C語言中的jansson庫來加載json數據。首先定義了一個json字符串,然后使用json_loads()函數將其轉換為json_t類型的對象。如果該函數返回的是NULL,則表示解析json出現錯誤,錯誤信息可以通過json_error_t結構體的text成員獲得。
接著,可以使用json_object_get()函數來獲取json對象中的值。例如,使用json_string_value()函數來獲取字符串類型的值,使用json_integer_value()函數來獲取整型類型的值。
最后,使用json_decref()函數釋放json_t類型的對象。