JSON是當前互聯網主流的一種數據交互格式,常見的后端語言,如C,也提供了很多JSON操作的庫。本文就主要介紹在C中如何使用JSON讀取一個JSON格式的文件數據。
C語言中常用的JSON庫有多個,如cJSON、Jansson等。這里以cJSON為例說明。
#include "cJSON.h" #includeint main() { FILE *fp; char buffer[1024]; cJSON *json; fp = fopen("example.json", "r"); fread(buffer, 1, 1024, fp); fclose(fp); json = cJSON_Parse(buffer); if (!json) { printf("Error before: [%s]\n", cJSON_GetErrorPtr()); return 1; } cJSON *item = cJSON_GetObjectItemCaseSensitive(json, "name"); if (cJSON_IsString(item) && (item->valuestring != NULL)) { printf("name is: %s\n", item->valuestring); } cJSON_Delete(json); return 0; }
上面的代碼首先從example.json文件中讀取內容,接著解析JSON字符串,最后使用cJSON_GetObjectItemCaseSensitive函數獲取JSON中的某個節點(如這里獲取了"name"節點),并輸出其值。需要注意的是,在獲取節點值時,需要進行類型判斷。
除了基本的取值,cJSON還支持JSON數據的構建、修改、輸出等操作。感興趣的讀者可以去了解更多相關內容。
上一篇python 設置背景圖
下一篇mysql刪除時加觸發器