欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

c json對象 查找 find

錢諍諍1年前10瀏覽0評論

c語言中json對象的查找操作十分常見,而實現(xiàn)查找的方法多種多樣。其中,基于json-c庫的查找方法簡單易懂,實用性強,是我們常用的一種方法。在使用該方法之前,需要先將待查找的json對象轉(zhuǎn)化為json_object對象。

#include <json-c/json.h>
char *json_str = "{\"name\":\"張三\",\"age\":20}";
struct json_object *json = json_tokener_parse(json_str);

經(jīng)過上述轉(zhuǎn)化后,我們就可以對json_object對象進行查找操作了。具體查找操作分為兩種:

一種是直接根據(jù)名字進行查找,使用json_object_object_get()函數(shù),其中第一個參數(shù)為json_object對象,第二個參數(shù)為待查找的名字:

struct json_object *name;
json_object_object_get_ex(json, "name", &name);

經(jīng)過上述查找后,我們便可以得到j(luò)son_object對象中名字為“name”的值。如果查找失敗,則返回空指針。

另一種是根據(jù)下標進行查找,使用json_object_array_get_idx()函數(shù),其中第一個參數(shù)為json_object對象,第二個參數(shù)為待查找的下標:

struct json_object *array;
json_object_object_get_ex(json, "list", &array);
struct json_object *value;
value = json_object_array_get_idx(array, 0);

上述代碼的作用是從json_object對象中名字為“l(fā)ist”的值中取出下標為0的值。

總之,基于json-c庫的查找方法雖然簡單,但功能十分實用,特別適用于解析較為復(fù)雜的json數(shù)據(jù)。