JSON是JavaScript Object Notation的縮寫,它是一種輕量級的數據交換格式。在C語言中,我們可以使用第三方庫來對JSON數據進行操作。以下是在C語言中將JSON寫入文件的方法。
#include <stdio.h> #include <jansson.h> int main() { FILE *fp; json_t *root; json_error_t error; //創建JSON對象 root = json_object(); json_object_set_new(root, "name", json_string("小明")); json_object_set_new(root, "age", json_integer(18)); json_object_set_new(root, "gender", json_string("男")); //打開文件 fp = fopen("data.json", "w"); if(!fp) { printf("無法打開文件!\n"); return 1; } //將JSON寫入文件 if(json_dumpf(root, fp, JSON_INDENT(4)) != 0) { printf("寫入文件失敗!\n"); return 1; } //釋放內存并關閉文件 json_decref(root); fclose(fp); printf("JSON寫入文件成功!\n"); return 0; }
首先,我們需要使用“#include <jansson.h>”導入jansson庫。接著,我們創建一個空的JSON對象,使用json_object_set_new函數向對象中添加鍵值對。其中,json_string和json_integer分別用于創建字符串和整型數據。在本例中,我們創建了一個包含姓名、年齡和性別信息的JSON對象。
接著,我們使用fopen函數打開一個文件,并將文件指針賦值給變量fp。若文件打開失敗,程序就會輸出錯誤信息并退出。
最后,我們使用json_dumpf函數將JSON對象寫入文件。第一個參數是要寫入的JSON對象,第二個參數是文件指針,第三個參數是JSON的縮進格式。如果函數返回的值不為0,說明寫入文件失敗。
最后,我們在程序結束前,使用json_decref釋放JSON對象占用的內存,并使用fclose函數關閉文件。
本例中輸出的文件內容如下:
{ "name": "小明", "age": 18, "gender": "男" }
以上就是在C語言中將JSON寫入文件的方法。通過jansson庫,我們可以很方便地完成JSON數據的操作。
上一篇vue入門伯樂在線
下一篇python 浮點型計算