今天我們將會討論如何在C語言中解析并讀取JSON數據。JSON是一種輕量級的數據交換格式,而且在大多數Web應用程序和API中都被廣泛使用。如果你的項目需要從一個API中讀取JSON數據,使用C語言解析JSON也是非常實用的。
#include <stdio.h> #include <stdlib.h> #include <string.h> #include <jansson.h> int main() { char* json_string = "{ \"name\": \"Tom\", \"age\": 25 }"; json_error_t error; json_t* root; json_t* name, age; const char* name_text; int age_value; // 解析JSON字符串 root = json_loads(json_string, 0, &error); // 獲取name屬性的值 name = json_object_get(root, "name"); name_text = json_string_value(name); // 獲取age屬性的值 age = json_object_get(root, "age"); age_value = json_integer_value(age); // 打印結果 printf("Name: %s\n", name_text); printf("Age: %d\n", age_value); // 釋放內存 json_decref(root); return 0; }
以上代碼將會輸出字符串中的"name"和"age"屬性的值。在這個示例中,我們首先將JSON字符串加載到JSON對象中。然后,我們使用json_object_get()函數獲取每個屬性,并使用相應的函數(json_string_value()和json_integer_value())獲取屬性的值。最后,我們釋放了JSON對象。
當然,這只是解析JSON的最基本的方法之一。JSON還具有許多其他功能,例如對象嵌套,更多的數據類型以及數組等。要學習如何使用C語言處理更高級的JSON,請參考官方庫“jansson”。
上一篇vue2.0 drag