欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

c 讀取json

錢衛國2年前10瀏覽0評論

使用c 讀取json是非常常見的需求,特別是在后端開發領域中。在c 中讀取json,通常使用第三方庫,比如cJSON。接下來,我們就來看一下如何使用cJSON 來讀取json。

#include#include#include "cJSON.h"
char *read_file(const char *filename) {
FILE *file;
char *content;
long size;
file = fopen(filename, "rb");
if (file == NULL) {
return NULL;
}
fseek(file, 0, SEEK_END);
size = ftell(file);
rewind(file);
content = (char *) malloc(size + 1);
if (content == NULL) {
fclose(file);
return NULL;
}
fread(content, 1, size, file);
fclose(file);
content[size] = '\0';
return content;
}
int main() {
char *content;
cJSON *root;
cJSON *item;
content = read_file("example.json");
if (content == NULL) {
printf("Error: failed to read file.\n");
return -1;
}
root = cJSON_Parse(content);
if (root == NULL) {
printf("Error: failed to parse json string.\n");
free(content);
return -1;
}
item = cJSON_GetObjectItem(root, "name");
if (item == NULL) {
printf("Error: failed to get item.\n");
cJSON_Delete(root);
free(content);
return -1;
}
printf("Name: %s\n", item->valuestring);
cJSON_Delete(root);
free(content);
return 0;
}

以上代碼中,我們首先定義了一個讀取文件的函數read_file,然后在main函數中,讀取example.json文件的內容,使用cJSON_Parse將json字符串轉換為cJSON對象,然后使用cJSON_GetObjectItem獲取"name"字段,并輸出其值。

綜上,使用cJSON 讀取json是非常簡單的。我們只需要使用cJSON_Parse將json字符串轉換為cJSON對象,然后便可使用cJSON提供的函數獲取json中的各項數據。