在使用C語言進行JSON編程時,我們通常會遇到需要從JSON數組中提取數據的情況。下面我們將通過代碼示例來介紹如何使用C語言獲取JSON數組中的值。
// 導入json-c頭文件 #include// 定義JSON字符串 char *json_string = "{\"name\": \"Tom\", \"age\": 25, \"scores\": [80, 90, 95]}"; // 將字符串解析成JSON對象 json_object *json_obj = json_tokener_parse(json_string); // 提取scores數組 json_object *scores_obj; json_object_object_get_ex(json_obj, "scores", &scores_obj); // 獲取scores數組的長度 int scores_len = json_object_array_length(scores_obj); // 遍歷scores數組,提取每個元素的值 for (int i = 0; i< scores_len; i++) { json_object *score_obj = json_object_array_get_idx(scores_obj, i); int score = json_object_get_int(score_obj); printf("第%d個成績是%d\n", i+1, score); }
上述代碼中,我們首先通過json_tokener_parse()函數將JSON字符串解析成一個json_object對象,然后通過json_object_object_get_ex()函數獲取到scores數組的json_object對象,并使用json_object_array_length()函數獲取到scores數組的長度。最后我們使用for循環遍歷scores數組,并通過json_object_array_get_idx()函數和json_object_get_int()函數提取每個元素的值。
以上就是使用C語言獲取JSON數組中的值的方法,希望對大家有所幫助。