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

c json的讀取添加刪除修改

劉姿婷2年前10瀏覽0評論

在C語言中,我們常常需要對JSON格式的數據進行操作,其中包括讀取、添加、刪除和修改等操作。在這篇文章中,我們將介紹如何使用C語言操作JSON數據。

首先,我們需要使用一個開源的JSON解析庫,例如jansson。使用該庫,我們可以方便地將JSON格式的數據轉化為C語言中的數據類型,例如數組、字符串和數字等。下面是一個簡單的JSON文件示例:

{
"name": "Alex",
"age": 28,
"hobbies": ["running", "swimming", "hiking"]
}

使用jansson庫,我們可以讀取該JSON文件中的數據,并將其轉化為C語言中的數據類型:

#include#includeint main() {
const char *json_str = "{\"name\":\"Alex\",\"age\":28,\"hobbies\":[\"running\",\"swimming\",\"hiking\"]}";
json_error_t error;
json_t *json = json_loads(json_str, 0, &error);
json_t *name = json_object_get(json, "name");
json_t *age = json_object_get(json, "age");
json_t *hobbies = json_object_get(json, "hobbies");
printf("Name: %s\n", json_string_value(name));
printf("Age: %d\n", json_integer_value(age));
printf("Hobbies:\n");
size_t index;
json_t *value;
json_array_foreach(hobbies, index, value) {
printf("%s\n", json_string_value(value));
}
json_decref(json);
return 0;
}

上述代碼會輸出以下結果:

Name: Alex
Age: 28
Hobbies:
running
swimming
hiking

接下來,我們將介紹如何添加、刪除和修改JSON數據。使用jansson庫,我們可以通過簡單的API實現這些操作。例如,我們可以添加一項新的愛好,修改年齡為30歲,刪除姓名字段:

#includeint main() {
const char *json_str = "{\"name\":\"Alex\",\"age\":28,\"hobbies\":[\"running\",\"swimming\",\"hiking\"]}";
json_error_t error;
json_t *json = json_loads(json_str, 0, &error);
json_object_del(json, "name");
json_object_set_new(json, "age", json_integer(30));
json_array_append_new(json_object_get(json, "hobbies"), json_string("coding"));
char *json_str_modified = json_dumps(json, JSON_COMPACT | JSON_ENSURE_ASCII);
printf("%s\n", json_str_modified);
free(json_str_modified);
json_decref(json);
return 0;
}

上述代碼會輸出以下結果:

{"age":30,"hobbies":["running","swimming","hiking","coding"]}

如上所示,我們使用了json_object_del()函數刪除了"name"字段,使用json_object_set_new()函數將年齡修改為30歲,使用json_array_append_new()函數添加了新的愛好,最后使用json_dumps()函數將修改后的JSON數據轉化為字符串。

總之,使用jansson庫,我們可以方便地讀取、添加、刪除和修改JSON數據,使得C語言開發更加高效和靈活。