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

c 本地讀寫json

傅智翔2年前8瀏覽0評論

JSON(JavaScript Object Notation)是一種輕量級的數據交換格式,它易于閱讀和編寫,并且在不同平臺上都具有良好的兼容性。在C語言中,我們可以使用第三方庫進行本地讀寫JSON。

一個流行的C語言JSON解析庫是cJSON。cJSON是一個輕量級的庫,不需要其他任何依賴項。其操作很簡單:我們只需要使用cJSON_Parse()函數將JSON字符串解析為cJSON類型的對象,然后可以使用cJSON_GetObjectItem()和cJSON_GetArrayItem()等函數獲取數據或者進行操作。

cJSON *root = cJSON_Parse(json_str); //解析JSON字符串
cJSON *item = cJSON_GetObjectItem(root,"name"); //獲取JSON對象的name項
char *name = cJSON_Print(item); //將name項打印出來
cJSON_Delete(root); //刪除解析后的cJSON對象

對于本地讀寫,我們可以將cJSON對象寫入JSON文件中,或從JSON文件中讀取JSON對象。

FILE *fp = fopen("data.json", "w"); //打開文件
char *json_str = cJSON_Print(root); //將cJSON對象轉換成JSON字符串
fputs(json_str, fp); //將JSON字符串寫入文件
fclose(fp); //關閉文件
FILE *fp = fopen("data.json", "r"); //打開文件
char buffer[1024];
while(fgets(buffer, sizeof(buffer), fp) != NULL){ //逐行讀取文件內容
cJSON *root = cJSON_Parse(buffer); //解析JSON字符串
//...
cJSON_Delete(root); //刪除解析后的cJSON對象
}
fclose(fp); //關閉文件

在使用cJSON進行本地讀寫JSON時,需要注意內存泄漏問題。我們需要手動調用cJSON_Delete()函數刪除解析后的cJSON對象,以避免內存泄漏。