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

c 寫入讀取json文件

吉茹定1年前8瀏覽0評論

C語言是一種廣泛運用于嵌入式系統開發和系統編程的高級編程語言,對于處理文本文件有著強大的能力?,F在,越來越多的軟件開發中,使用json文件作為數據格式,因此,我們需要學會使用C語言讀寫json文件。

首先,我們需要使用一個稱為cJSON的C語言庫,該庫提供了一組方便的函數來讀取和寫入json文件。我們可以通過以下方式使用該庫:

#include <stdio.h>
#include <cJSON.h>
int main() {
// 創建一個json對象
cJSON *jsonObject = cJSON_CreateObject();
// 添加鍵值對到對象中
cJSON_AddStringToObject(jsonObject, "name", "Alice");
cJSON_AddNumberToObject(jsonObject, "age", 25);
// 寫入到文件中
FILE *fp = fopen("data.json", "w");
char *jsonStr = cJSON_Print(jsonObject);
fprintf(fp, "%s", jsonStr);
fclose(fp);
// 從文件中讀取json對象
fp = fopen("data.json", "r");
fseek(fp, 0, SEEK_END);
long fileSize = ftell(fp);
fseek(fp, 0, SEEK_SET);
char *jsonFileContent = (char*) malloc((size_t) fileSize);
fread(jsonFileContent, 1, (size_t) fileSize, fp);
fclose(fp);
cJSON *jsonObjFromFile = cJSON_Parse(jsonFileContent);
char* name = cJSON_GetObjectItem(jsonObjFromFile, "name")->valuestring;
int age = cJSON_GetObjectItem(jsonObjFromFile, "age")->valueint;
// 打印結果
printf("name: %s age: %d\n", name, age);
// 釋放資源
free(jsonFileContent);
cJSON_Delete(jsonObject);
cJSON_Delete(jsonObjFromFile);
return 0;
}

在上述代碼中,我們創建了一個json對象,并向其中添加了兩個鍵值對。然后,我們將其寫入到一個名為data.json的文件中。此后,我們從該文件中讀取json對象。最后,我們打印了從文件中讀取的json數據的結果。