JSON是一種輕量級的數(shù)據(jù)交換格式,它廣泛應用于前后端交互的過程中。C語言中的json-c庫是一種常用的處理JSON數(shù)據(jù)的工具。在實際開發(fā)中,經(jīng)常需要遍歷JSON中的list類型的數(shù)據(jù)。下面通過代碼來演示如何使用json-c庫來遍歷JSON list。
#include <stdio.h>
#include <json-c/json.h>
int main()
{
const char *json_string = "{\"list\":[1,2,3,4,5]}";
struct json_object *root = json_tokener_parse(json_string);
struct json_object *list_object;
json_object_object_get_ex(root, "list", &list_object); // 獲取list
// 遍歷list
int i;
for (i = 0; i < json_object_array_length(list_object); i++)
{
struct json_object *element_object = json_object_array_get_idx(list_object, i);
int value = json_object_get_int(element_object);
printf("%d\n", value);
}
json_object_put(root); // 關閉資源
return 0;
}
在這段代碼中,我們首先定義了一個包含list類型的JSON字符串,并通過json_tokener_parse函數(shù)將其解析成了一個json_object對象。然后我們通過json_object_object_get_ex函數(shù)獲取到了list對象。接下來,我們通過json_object_array_length函數(shù)獲取到該list中元素的個數(shù),并通過json_object_array_get_idx函數(shù)分別獲取每個元素,最后通過json_object_get_int函數(shù)獲取元素的值。
經(jīng)過以上操作,我們就能夠遍歷JSON list中的所有元素。當然,在實際開發(fā)中,我們還需要進行若干的錯誤檢測和異常處理,以保證代碼的魯棒性和可靠性。
上一篇c json 轉類
下一篇python 掛單交易