在C語言中,讀取json文件是一項很常見的任務。下面我們來介紹如何使用c語言讀取json文件。
首先,我們需要為C語言引入json解析庫。目前,最常用的Json解析庫是 CJSON。
#include "cjson/cJSON.h"
接著,我們需要打開一個json文件,并將文件內容讀取進入緩存。
FILE *fp = NULL; unsigned char buf[1024]; int len = 0; fp = fopen("test.json", "rb"); if(fp){ fseek(fp, 0, SEEK_END); len = ftell(fp); rewind(fp); fread(buf, 1, len, fp); fclose(fp); }
通過以上代碼,我們已經完成了將json文件讀入緩存的操作。接下來,我們需要將緩存中的json字符串解析成一個json對象。
cJSON* json = cJSON_Parse(buf);
使用以上代碼,我們已經得到了一個cJSON類型的json對象。接下來,我們可以讀取對象中的具體內容。
cJSON *item1 = cJSON_GetObjectItem(json, "name"); if(item1 != NULL){ printf("name:%s\n", item1->valuestring); } cJSON *item2 = cJSON_GetObjectItem(json, "age"); if(item2 != NULL){ printf("age:%d\n", item2->valueint); }
以上代碼實現了讀取json中的"name"和"age"字段并輸出到控制臺的操作。
最后,記得在程序結束時釋放json對象內存。
cJSON_Delete(json);
至此,我們已經成功地實現了C語言讀取json文件的操作。