有時候我們在進行編程開發的時候,需要生成一些特定形式的數據,這時候用json格式是非常方便的。而在c語言中,如果我們需要生成一份json的數據源文件,我們可以使用c json庫。C json庫不僅可以幫助我們生成json數據,還可以使我們的開發過程更加高效和便捷。
#include <stdio.h>
#include <stdlib.h>
#include <cjson/cJSON.h>
int main()
{
//創建json對象
cJSON *root = cJSON_CreateObject();
//往json中添加數據
cJSON_AddStringToObject(root, "name", "Tom");
cJSON_AddNumberToObject(root, "age", 18);
cJSON *info = cJSON_CreateObject();
cJSON_AddStringToObject(info, "school", "清華大學");
cJSON_AddItemToObject(root, "info", info);
//將json對象轉化為字符串
char *json_data = cJSON_Print(root);
//將數據寫入文件
FILE *fp = fopen("data.json", "w+");
fwrite(json_data, 1, strlen(json_data), fp);
fclose(fp);
//釋放json對象以及數據指針
cJSON_Delete(root);
free(json_data);
return 0;
}
上述代碼中,我們創建了一個json對象root,往里面添加了一些數據,然后將這個對象轉化為字符串,最后寫入了一個文件。在寫入文件之前,我們需要將json對象轉換為字符串,因為只有字符串才能寫入文件。通過c json庫提供的cJSON_Print函數,我們可以將json對象轉化為對應的字符串。在寫入結束后,我們可以手動釋放json對象以及我們生成的字符串。
上一篇python 語法結構
下一篇vue cli 源碼