C語言中常常需要從JSON文件中讀取數(shù)據(jù),并將其存儲到內(nèi)存中進(jìn)行處理。本文將介紹如何使用C語言讀取JSON文件到內(nèi)存。
首先,我們需要打開JSON文件。
FILE *fp; fp = fopen("example.json", "r"); if (fp == NULL) { printf("Failed to open the file\n"); exit(1); }
接下來,我們需要在內(nèi)存中創(chuàng)建一個JSON對象。
cJSON *json; char *json_str; fseek(fp, 0, SEEK_END); int length = ftell(fp); fseek(fp, 0, SEEK_SET); json_str = (char *)malloc(length + 1); fread(json_str, 1, length, fp); json_str[length] = '\0'; json = cJSON_Parse(json_str); if (!json) { printf("Error before: [%s]\n", cJSON_GetErrorPtr()); }
通過cJSON_Parse()
函數(shù),我們將JSON文件中的數(shù)據(jù)解析為一個JSON對象。如果解析失敗,將會打印錯誤信息。
現(xiàn)在我們已經(jīng)成功地將JSON文件中的數(shù)據(jù)讀取到了內(nèi)存中的JSON對象中。
下一篇c語言輸出json