JSON是一種輕量級的數據交換格式,因為易讀性好、語法簡單、無需XML約束文件,而被廣泛應用。C語言作為一門歷史悠久、應用廣泛的編程語言,同樣支持對JSON文件的讀取和解析操作。
對于C語言,我們可以使用第三方庫來實現JSON的讀取和解析。這里我們介紹其中一個比較常用的庫:cJSON。
首先需要在項目中包含cJSON.h頭文件,然后就可以使用cJSON庫提供的函數進行JSON文件的讀取和解析了。
// 打開JSON文件 FILE* fp = fopen("example.json", "r"); if(fp == NULL) { printf("無法打開JSON文件\n"); } else { // 讀取文件內容 fseek(fp, 0, SEEK_END); long size = ftell(fp); fseek(fp, 0, SEEK_SET); char* content = (char*)malloc(sizeof(char) * size); fread(content, 1, size, fp); fclose(fp); // 解析JSON內容 cJSON* root = cJSON_Parse(content); if(!json) { printf("JSON文件格式錯誤\n"); } else { // 獲取JSON對象中的值 cJSON* name = cJSON_GetObjectItem(root, "name"); cJSON* age = cJSON_GetObjectItem(root, "age"); cJSON* skills = cJSON_GetObjectItem(root, "skills"); printf("Name: %s, Age: %d\n", name->valuestring, age->valueint); cJSON* skill = NULL; cJSON_ArrayForEach(skill, skills) { printf("Skill: %s\n", skill->valuestring); } } // 釋放內存 cJSON_Delete(root); free(content); }
通過上述代碼,我們成功讀取并解析了一個JSON文件,同時獲取了其中的名字、年齡和技能。
上一篇c解析json格式的數據
下一篇vue 組件掛載完