JSON是目前比較流行的數據交換格式之一,也是前端開發中常用的數據格式之一。在C語言中,我們可以使用第三方庫來解析和操作JSON數據,這里我們介紹一下如何使用 cJSON 庫提取JSON數據庫中的數據。
步驟如下:
1、下載cJSON庫并將其加入我們的項目。 2、讀取JSON數據庫文件。 3、將讀取的數據解析為 cJSON 對象。 4、使用 cJSON 的 API 提取我們需要的數據。
下面是具體的代碼:
#include#include "cJSON.h" int main() { //讀取JSON數據 FILE *fp = fopen("data.json", "rb"); fseek(fp, 0, SEEK_END); long size = ftell(fp); fseek(fp, 0, SEEK_SET); char *jsonData = (char*)malloc(size + 1); fread(jsonData, 1, size, fp); fclose(fp); jsonData[size] = 0; //將JSON數據解析為cJSON對象 cJSON *jsonRoot = cJSON_Parse(jsonData); //獲取數據 cJSON *jsonNameItem = cJSON_GetObjectItem(jsonRoot, "name"); char *name = jsonNameItem->valuestring; printf("name=%s\n", name); cJSON *jsonAgeItem = cJSON_GetObjectItem(jsonRoot, "age"); int age = jsonAgeItem->valueint; printf("age=%d\n", age); cJSON *jsonHobbyArray = cJSON_GetObjectItem(jsonRoot, "hobby"); int arraySize = cJSON_GetArraySize(jsonHobbyArray); for(int i=0; i valuestring; printf("hobby%d=%s\n", i+1, hobby); } //釋放內存 cJSON_Delete(jsonRoot); free(jsonData); return 0; }
以上代碼中,我們首先通過 fopen 函數讀取 JSON 數據庫文件,并將其解析為 cJSON 對象。
然后,我們使用 cJSON 的 API 來提取我們需要的數據。例如,使用 cJSON_GetObjectItem 函數獲取對象屬性,使用 cJSON_GetArrayItem 函數獲取數組元素等。
最后,我們需要手動釋放 cJSON 對象和讀取 JSON 數據時分配的內存。
以上就是使用 cJSON 庫提取 JSON 數據庫的基本操作。
上一篇python 爬取a標簽
下一篇c 怎么提交json數據