在C語言中,保存json格式數(shù)據(jù)可以使用解析庫來實現(xiàn),因為手動解析json數(shù)據(jù)比較繁瑣。
在使用json解析庫之前,需要先安裝相應(yīng)的庫文件并在代碼中引用。以下示例使用CJSON庫來解析json數(shù)據(jù)。
#include "cjson/cJSON.h" //引用CJSON庫 int main() { //創(chuàng)建json對象 cJSON *root = cJSON_CreateObject(); //添加鍵值對到j(luò)son對象中 cJSON_AddStringToObject(root, "name", "john"); cJSON_AddNumberToObject(root, "age", 25); //將json對象轉(zhuǎn)為字符串 char *json_str = cJSON_Print(root); //保存字符串到文件中 FILE *fp = fopen("data.json", "w"); fprintf(fp, "%s", json_str); fclose(fp); //釋放json對象和字符串內(nèi)存 cJSON_Delete(root); free(json_str); return 0; }
在上面的示例中,首先創(chuàng)建了一個json對象root,然后向?qū)ο笾刑砑渔I值對,接著使用cJSON_Print函數(shù)將對象轉(zhuǎn)為字符串,并保存到文件中。
需要注意的是,在保存字符串到文件中時需要使用fwrite或fprintf等函數(shù),而不能直接使用fputs函數(shù)。