在C語言中,我們可以利用JSON(JavaScript Object Notation)格式來存儲和解析數據。與其他格式(如XML)相比,JSON更加簡潔易懂,且支持幾乎所有的數據類型。下面我們將介紹如何使用C語言將數據存儲為JSON格式的文件。
#include#include #include "cJSON.h" int main(void) { cJSON *root, *array, *data; int i; // 創建一個JSON對象root,類型為對象類型,即{} root = cJSON_CreateObject(); // 在root中創建一個名為"data"的數組 array = cJSON_CreateArray(); cJSON_AddItemToObject(root, "data", array); // 向數組中存儲數據,這里我們模擬存儲一些整數和字符串 for (i = 0; i< 5; i++) { data = cJSON_CreateObject(); // 存儲整數 cJSON_AddNumberToObject(data, "id", i + 1); // 存儲字符串 cJSON_AddStringToObject(data, "name", "cJSON"); cJSON_AddItemToArray(array, data); } // 將生成的JSON數據格式化輸出到文件中 FILE *fp = fopen("data.json", "w"); if (fp) { char *out = cJSON_Print(root); fprintf(fp, "%s", out); free(out); fclose(fp); } // 釋放內存 cJSON_Delete(root); return 0; }
以上代碼利用了第三方庫cJSON來生成JSON數據,并利用C庫對文件進行寫入。其中,cJSON_Print()函數用于將JSON對象格式化為字符串,以便于向文件中輸出,參數root就是要轉換的JSON對象。在生成文件之后,我們需要手動釋放生成的JSON對象和字符串占用的內存。
上一篇python 類加載機制
下一篇c 定義json