色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

c怎么讀取json文件

錢良釵2年前9瀏覽0評論

在C語言中,使用第三方庫進行JSON文件的讀取與操作是比較常見的方法。以下是一個使用cJSON庫讀取JSON文件的示例:

#include <stdio.h>
#include <cJSON.h>
int main() {
// 打開JSON文件
FILE* fp = fopen("data.json", "r");
if (fp == NULL) {
printf("無法打開文件\n");
return -1;
}
// 讀取JSON文件數據
fseek(fp, 0, SEEK_END);
long file_size = ftell(fp);
fseek(fp, 0, SEEK_SET);
char* json_data = (char*) malloc(file_size + 1);
fread(json_data, 1, file_size, fp);
json_data[file_size] = '\0';
fclose(fp);
// 解析JSON數據
cJSON* root = cJSON_Parse(json_data);
if (root == NULL) {
printf("無法解析JSON數據\n");
return -1;
}
// 獲取JSON對象的值
cJSON* name = cJSON_GetObjectItem(root, "name");
if (name != NULL) {
printf("name: %s\n", name->valuestring);
}
cJSON* age = cJSON_GetObjectItem(root, "age");
if (age != NULL) {
printf("age: %d\n", age->valueint);
}
// 釋放內存
cJSON_Delete(root);
free(json_data);
return 0;
}

代碼中使用了cJSON庫來解析JSON數據。首先需要打開JSON文件并讀取其中的數據,然后通過cJSON_Parse函數將JSON數據解析成一個cJSON對象,就可以通過cJSON_GetObjectItem函數獲取對象中的值。

需要注意的是,在讀取JSON文件數據時需要注意文件大小。代碼中使用了fseek和ftell函數獲取文件大小并進行讀取。