JSON(JavaScript Object Notation)是一種輕量級(jí)的數(shù)據(jù)交換格式,在Web應(yīng)用中被廣泛使用。在C語(yǔ)言中,我們可以使用庫(kù)來解析JSON數(shù)據(jù)。其中,cJSON
庫(kù)是一個(gè)很常用的JSON解析庫(kù)。
使用cJSON
庫(kù)解析JSON數(shù)據(jù)的步驟如下:
1. 創(chuàng)建一個(gè)cJSON 對(duì)象cJSON *root = NULL ; root = cJSON_Parse(json_string) ; 2. 獲取JSON中的數(shù)據(jù)cJSON *item = cJSON_GetObjectItem(root, key); int value = cJSON_GetObjectItem(item, "value")->valueint; 3. 釋放cJSON 對(duì)象cJSON_Delete(root) ;
下面是一個(gè)完整的例子:
#include#include #include "cJSON.h" int main() { char *json_string = "{ \"name\": \"Alice\", \"age\": 22 }"; cJSON *root = NULL; // 定義 cJSON 對(duì)象 root = cJSON_Parse(json_string); // 解析 JSON 字符串 cJSON *name = cJSON_GetObjectItem(root, "name"); // 獲取 name cJSON *age = cJSON_GetObjectItem(root, "age"); // 獲取 age printf("name: %s, age: %d\n", name->valuestring, age->valueint); // 打印結(jié)果 cJSON_Delete(root); // 釋放 cJSON 對(duì)象 return 0; }
運(yùn)行結(jié)果如下:
name: Alice, age: 22
總的來說,cJSON
是一個(gè)方便易用的 JSON 解析庫(kù)。