欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

c 讀 生成json文件

夏志豪2年前8瀏覽0評論

在c語言中,我們有時候需要讀取或生成json文件來交換數據或者做其他操作。下面我們來介紹一下在c語言中如何讀取和生成json文件。

讀取json文件

讀取json文件需要使用json-c這個庫,下面是一個簡單的讀取json文件的例子:

#include <stdio.h>#include <json-c/json.h>int main() {
FILE* file = fopen("example.json", "r");    //打開文件
char buffer[1024];
struct json_object* root;
fread(buffer, 1024, 1, file);   //讀取文件內容到buffer中
root = json_tokener_parse(buffer);    //將buffer解析成json對象
//使用json對象獲取數據
struct json_object* name;
json_object_object_get_ex(root, "name", &name);
printf("name: %s\n", json_object_get_string(name));
fclose(file);
return 0;
}

上面的例子中,我們首先打開文件并讀取文件內容到buffer中,然后使用json_tokener_parse函數將buffer解析成json對象。接著我們可以使用json_object_object_get_ex函數獲取json對象中的屬性值。

生成json文件

生成json文件同樣需要使用json-c這個庫。下面是一個簡單的生成json文件的例子:

#include <stdio.h>#include <json-c/json.h>int main() {
struct json_object* root = json_object_new_object();   //創建json對象
json_object_object_add(root, "name", json_object_new_string("Tom"));  //添加屬性
json_object_object_add(root, "age", json_object_new_int(20));   //添加屬性
FILE* file = fopen("example.json", "w");    //打開或創建文件
fwrite(json_object_to_json_string(root), strlen(json_object_to_json_string(root)), 1, file);  //將json對象轉換成字符串并寫入文件
fclose(file);
return 0;
}

上面的例子中,我們首先創建了一個json對象root,并向其中添加了兩個屬性,然后使用json_object_to_json_string函數將json對象轉換成字符串,并將字符串寫入文件。