JSON是一種輕量級的數據交換格式,在現代互聯網中被廣泛應用。C語言是一種底層語言,它的數據結構和JSON相比顯得笨重,需要進行轉換才能與其他系統進行交互。本文將介紹如何將C語言中的臨時對象轉換成JSON格式。
#include <stdio.h>
#include <stdlib.h>
#include <stdbool.h>
#include <string.h>
#include <jansson.h>
void create_json(const char *filename, int age, bool married, const char *name) {
json_t *root = json_object();
json_object_set_new(root, "age", json_integer(age));
json_object_set_new(root, "married", married ? json_true() : json_false());
json_object_set_new(root, "name", json_string(name));
char *json_str = json_dumps(root, JSON_INDENT(2) | JSON_PRESERVE_ORDER);
FILE *fp = fopen(filename, "w+");
fputs(json_str, fp);
fclose(fp);
free(json_str);
json_decref(root);
}
int main() {
create_json("test.json", 26, true, "Jack");
return 0;
}
以上代碼簡單的演示了如何創建一個名為"test.json"的JSON文件,其中包含三個屬性:年齡、是否已婚和名字。這些屬性在C語言中使用int、bool和char等數據類型表示,通過使用jansson庫轉換為JSON格式。
在這段代碼中,我們使用了json_t類型來創建了一個新的JSON對象,并在其中添加了三個屬性。使用json_integer、json_true和json_false方法來轉換C語言的int和bool類型為JSON類型。最后使用json_string方法將C語言中的char類型轉化為字符串類型。在轉換完成后,我們使用json_dumps方法將JSON對象轉換為字符串類型。
最后將json_str寫入文件中,實現了將C語言類型的臨時對象轉換為JSON格式的操作。
上一篇python 聚類畫圖
下一篇c 使用json實例化