色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

c 寫入json文件

錢多多1年前7瀏覽0評論

在C語言中,我們經常需要將數據以JSON(JavaScript Object Notation)的格式寫入文件。JSON是一種輕量級的數據交換格式,在Web開發中得到了廣泛使用。

下面是使用C語言將數據寫成JSON格式并寫入文件的示例代碼

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <jansson.h>
int main()
{
json_t *json_root;
json_t *json_array;
json_t *json_obj;
json_t *json_name;
json_t *json_age;
json_t *json_courses;
char *json_str;
int size = 0;
int i;
FILE *fp;
// 構造JSON數據
json_root = json_object();
json_array = json_array();
for(i = 0; i< 3; i++)
{
json_obj = json_object();
json_name = json_string("小明");
json_age = json_integer(20);
json_courses = json_array();
json_array_append_new(json_courses, json_string("數學"));
json_array_append_new(json_courses, json_string("語文"));
json_object_set_new(json_obj, "name", json_name);
json_object_set_new(json_obj, "age", json_age);
json_object_set_new(json_obj, "courses", json_courses);
json_array_append_new(json_array, json_obj);
}
json_object_set_new(json_root, "students", json_array);
json_str = json_dumps(json_root, JSON_INDENT(4));
// 寫入JSON文件
if((fp = fopen("students.json", "wb")) == NULL)
{
puts("打開文件失敗!");
exit(1);
}
size = fwrite(json_str, 1, strlen(json_str), fp);
fclose(fp);
free(json_str);
json_decref(json_root);
return 0;
}

首先,我們使用jansson庫來幫助我們構造JSON數據和寫入JSON文件。在代碼中,我們構造了一個包含三個學生信息的JSON對象,并將其寫入一個名為“students.json”的文件中。代碼中的json_dumps()函數將JSON對象轉換為JSON字符串,并使用fwrite()函數將字符串寫入文件。