C語言是一門廣泛使用的語言,在很多項目中都有應用。而在項目中,經常需要讀取并解析JSON列表數據。在C語言中,我們可以使用一些第三方庫來幫助我們完成這項任務,例如jansson和cJSON等。以下,我們就以jansson為例,介紹如何讀取JSON列表數據。
// 導入jansson庫頭文件 #include// 定義JSON列表數據 char *json_str = "[{\"name\":\"Alice\",\"age\":20},{\"name\":\"Bob\",\"age\":18}]"; // 讀取JSON列表數據 json_error_t error; json_t *root = json_loads(json_str, JSON_DECODE_ANY, &error); // 遍歷JSON列表中的每一個元素 size_t index; json_t *element; json_array_foreach(root, index, element) { // 獲取當前元素中的數據 const char *name; int age; json_unpack(element, "{s:s, s:i}", "name", &name, "age", &age); // 輸出當前元素的數據 printf("name: %s\n", name); printf("age: %d\n", age); } // 釋放資源 json_decref(root);
在上述代碼中,我們首先導入jansson庫頭文件,然后定義JSON列表數據。接下來,我們使用json_loads函數讀取JSON數據,并遍歷列表中的每一個元素。在遍歷過程中,我們使用json_unpack函數獲取當前元素中的數據,然后將其輸出。最后,我們釋放資源。