C json 自動(dòng)解析是一種可以快速解析 JSON 數(shù)據(jù)的工具。JSON(JavaScript Object Notation)是一種輕量級(jí)的數(shù)據(jù)交換格式,常用于客戶端和服務(wù)器之間的數(shù)據(jù)傳輸。但是,手動(dòng)解析 JSON 數(shù)據(jù)消耗時(shí)間和精力,而使用 C json 自動(dòng)解析則可以輕松解決。
// 引入頭文件 #include "cJSON.h" // 定義JSON鍵名 #define KEY_NAME "name" #define KEY_AGE "age" #define KEY_ADDRESS "address" // JSON字符串 const char* json_str = "{ \"name\":\"Tom\", \"age\":20, \"address\":\"Beijing\" }"; // 解析JSON數(shù)據(jù) void parse_json_data(const char* json_str) { cJSON* root; cJSON* name; cJSON* age; cJSON* address; root = cJSON_Parse(json_str); if (root) { name = cJSON_GetObjectItem(root, KEY_NAME); age = cJSON_GetObjectItem(root, KEY_AGE); address = cJSON_GetObjectItem(root, KEY_ADDRESS); printf("%s's age is %d, living in %s\n", name->valuestring, age->valueint, address->valuestring); cJSON_Delete(root); } else { printf("parse error!\n"); } } // 主函數(shù) int main() { parse_json_data(json_str); return 0; }
如上所示,使用 C json 自動(dòng)解析需要引入相應(yīng)的頭文件,定義 JSON 鍵名以及 JSON 字符串。其中,cJSON_Parse 函數(shù)可以將 JSON 字符串轉(zhuǎn)換成 cJSON 對(duì)象,cJSON_GetObjectItem 函數(shù)可用于獲取指定鍵名的值。最后,使用 cJSON_Delete 函數(shù)釋放 cJSON 對(duì)象即可。