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

c 解析http的json串

老白2年前7瀏覽0評(píng)論

C語言常用的JSON解析庫有很多,但常見的幾種有 cJSON、Jansson、yajl 等。

下方是使用Json-c庫解析HTTP返回的JSON串的代碼示例:

#include <stdio.h>
#include <stdlib.h>
#include <json-c/json.h>
int main(void) {
char *json_str = "{ \"name\": \"John\", \"age\": 30, \"city\": \"New York\" }";
/* parse json字符串,得到指向json_object類型的指針 */
json_object* json_obj = json_tokener_parse(json_str);
/* 解析json中的鍵值對(duì) */
const char* name = json_object_get_string(json_object_object_get(json_obj, "name"));
int age = json_object_get_int(json_object_object_get(json_obj, "age"));
const char* city = json_object_get_string(json_object_object_get(json_obj, "city"));
/* 輸出解析結(jié)果 */
printf("Name: %s\n", name);
printf("Age: %d\n", age);
printf("City: %s\n", city);
/* 釋放json對(duì)象指針 */
json_object_put(json_obj);
return 0;
}

代碼解釋:

1. 將HTTP返回的JSON串賦值給指針變量 json_str。

2. 使用 json_tokener_parse 函數(shù)解析 JSON 字符串,得到指向 json_object 類型的指針。

3. 使用 json_object_object_get 函數(shù)獲取指定鍵值對(duì)的指針,然后再使用 json_object_get_string 和 json_object_get_int 函數(shù)將指針里面的值轉(zhuǎn)為字符串或整數(shù)。

4. 最后使用 printf 函數(shù)將解析結(jié)果輸出到控制臺(tái)上。

5. 最后需要使用 json_object_put 函數(shù)釋放 json 對(duì)象指針。