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

c語言讀寫json格式

榮姿康2年前8瀏覽0評論

C語言是一種強大的編程語言,被廣泛應用于各種領域中。在進行程序開發中,常常需要讀寫JSON格式的數據文件。JSON(Javascript Object Notation)是一種輕量級的數據交換格式,具有易于閱讀和編寫的特點。下面我們將介紹如何在C語言中讀寫JSON文件。

#include <stdio.h>
#include <jansson.h>
int main() {
// 讀取JSON文件
json_error_t error;
json_t *root = json_load_file("test.json", 0, &error);
if(!root) {
printf("Unable to open file: %s\n", error.text);
return 1;
}
// 解析JSON數據
json_t *data = json_object_get(root, "data");
if(!json_is_array(data)) {
printf("Invalid data format.\n");
return 1;
}
size_t index;
json_t *value;
json_array_foreach(data, index, value) {
json_t *name = json_object_get(value, "name");
json_t *age = json_object_get(value, "age");
printf("Name: %s, Age: %d\n", json_string_value(name), json_integer_value(age));
}
json_decref(root);
return 0;
}

以上代碼是一個簡單的讀取JSON文件并解析數據的示例。首先需要使用json_load_file函數讀取JSON文件,若讀取失敗則會返回錯誤信息。通過json_object_get函數獲取JSON中的數據,然后使用各種json類型的函數進行解析。

#include <stdio.h>
#include <jansson.h>
int main() {
// 創建JSON對象
json_t *root = json_object();
// 添加數據
json_t *array = json_array();
json_t *value1 = json_object();
json_t *name1 = json_string("張三");
json_t *age1 = json_integer(20);
json_object_set(value1, "name", name1);
json_object_set(value1, "age", age1);
json_array_append(array, value1);
json_t *value2 = json_object();
json_t *name2 = json_string("李四");
json_t *age2 = json_integer(30);
json_object_set(value2, "name", name2);
json_object_set(value2, "age", age2);
json_array_append(array, value2);
json_object_set(root, "data", array);
// 寫入JSON文件
int flags = JSON_INDENT(4) | JSON_PRESERVE_ORDER;
json_dump_file(root, "test.json", flags);
json_decref(root);
return 0;
}

以上代碼是一個簡單的創建JSON數據并寫入JSON文件的示例。首先需要創建json_t類型的對象,然后使用json_object_set和json_array_append函數添加數據。最后通過json_dump_file函數將JSON數據寫入文件中。

在進行C語言中的JSON讀寫操作時,需要使用jansson庫。jansson是一款用于C語言中讀寫JSON格式數據的開源庫,具有良好的性能和穩定性。其具有靈活的API和易于學習的特點,非常適用于各種C語言項目。