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

c 讀寫json幫助類

江奕云2年前8瀏覽0評論

JSON(JavaScript Object Notation)是一種輕型的數據交換格式,常用于網絡數據傳輸和配置文件。在C語言中,讀寫JSON數據需要用到相應的幫助類。

下面是一段示例代碼,用于讀取JSON文件:

#include <stdio.h>
#include <stdlib.h>
#include <jansson.h>
int main(int argc, char **argv)
{
json_t *root;
json_error_t error;
root = json_load_file("example.json", 0, &error);
if (!root) {
fprintf(stderr, "error: on line %d: %s\n", error.line, error.text);
return 1;
}
json_t *name = json_object_get(root, "name");
printf("name: %s\n", json_string_value(name));
json_t *age = json_object_get(root, "age");
printf("age: %d\n", json_integer_value(age));
json_decref(root);
return 0;
}

該代碼使用了jansson庫中的json_load_file函數從文件中讀取JSON數據,json_object_get函數獲取JSON對象中的值,json_string_value和json_integer_value分別獲取字符串和整數類型的值。

下面是一段示例代碼,用于將JSON數據寫入文件:

#include <stdio.h>
#include <stdlib.h>
#include <jansson.h>
int main()
{
json_t *root, *data, *name, *age;
root = json_object();
data = json_array();
name = json_string("John");
age = json_integer(23);
json_array_append_new(data, name);
json_array_append_new(data, age);
json_object_set_new(root, "data", data);
FILE *outfile = fopen("example.json", "w");
fputs(json_dumps(root, 0), outfile);
fclose(outfile);
json_decref(root);
return 0;
}

該代碼同樣使用了jansson庫中的函數,json_object和json_array函數創建JSON對象和數組,json_string和json_integer函數分別創建字符串和整數類型的值,json_object_set_new向JSON對象中添加鍵值對,json_dumps將JSON數據轉化為字符串,并寫入文件中。

以上是C語言中操作JSON數據的基本使用方法,讀者可以根據自己的需求進行修改和添加。