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

c json 保存到文件

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

c JSON 保存到文件是一項非常重要的操作。JSON 是一種輕量級的數據交換格式,常被用于各種平臺之間的數據交換。使用 C 語言來解析和保存 JSON 數據非常方便,支持多種操作系統平臺,且代碼量較小,性能較高。下面介紹 C JSON 如何保存到文件。

首先,需要導入 cJSON 庫。cJSON 是一套用于解析和生成 JSON 數據的 C 庫,十分方便實用,數據結構簡單清晰,而且內存管理十分優秀。

#include "cJSON.h"

接著,需要聲明數據結構體,用于保存 JSON 對象的各種屬性和值。

typedef struct {
int id;
char name[20];
double score;
int age;
} Student;

當數據結構體定義好后,可以使用 cJSON 來進行 JSON 對象的解析和生成,在生成時記得調用 cJSON_Delete()函數來釋放內存。

// 生成 JSON 對象
cJSON* CreateJson(Student stu) {
cJSON* pJson = cJSON_CreateObject();
cJSON_AddNumberToObject(pJson, "id", stu.id);
cJSON_AddStringToObject(pJson, "name", stu.name);
cJSON_AddNumberToObject(pJson, "score", stu.score);
cJSON_AddNumberToObject(pJson, "age", stu.age);
return pJson;
}
// 保存 JSON 對象到文件
void SaveToJson(Student* pStu, int count) {
cJSON* root = cJSON_CreateArray();
for (int i = 0; i< count; i++) {
cJSON* item = CreateJson(pStu[i]);
cJSON_AddItemToArray(root, item);
}
// 把JSON結構格式化到緩沖區JSONStr中
char* JSONStr = cJSON_Print(root);
FILE* fp = fopen("data.json", "w");
fwrite(JSONStr, strlen(JSONStr), 1, fp);
fclose(fp);
cJSON_Delete(root); // 釋放內存
free(JSONStr); // 釋放內存
}

以上就是 C JSON 保存到文件的代碼實現。