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

c 讀寫json

方一強1年前8瀏覽0評論

在C語言中,讀寫JSON是非常常見的操作。JSON是一種輕量級的數據交換格式,常見于前后端數據交互。下面我們來介紹一下如何在C語言中讀寫JSON。

首先,我們需要一個JSON庫。C語言中常用的JSON庫有json-c和cJSON。這里我們以json-c為例,首先需要安裝json-c庫。

sudo apt-get install libjson-c-dev

安裝完成后,我們就可以開始使用json-c庫了。下面是一個使用json-c庫讀JSON文件的示例代碼:

#include#includeint main() {
FILE *fp;
long length;
char *data;
struct json_object *json;
fp = fopen("data.json", "r");
fseek(fp, 0, SEEK_END);
length = ftell(fp);
fseek(fp, 0, SEEK_SET);
data = malloc(length + 1);
fread(data, 1, length, fp);
fclose(fp);
json = json_tokener_parse(data);
printf("%s", json_object_to_json_string(json));
free(data);
json_object_put(json);
return 0;
}

上面代碼中,我們首先打開JSON文件,讀取其中的數據。然后使用json_tokener_parse()函數將數據解析為json對象。最后,使用json_object_to_json_string()函數將json對象轉換為字符串打印出來。

接下來,我們來看一下使用json-c庫寫JSON文件的示例代碼:

#include#includeint main() {
struct json_object *json;
struct json_object *obj;
json = json_object_new_object();
obj = json_object_new_int(123);
json_object_object_add(json, "test", obj);
FILE *fp = fopen("out.json", "w");
fputs(json_object_to_json_string(json), fp);
fclose(fp);
json_object_put(json);
return 0;
}

上面代碼中,我們首先創建一個空的json對象,使用json_object_new_int()函數創建一個鍵值為"test",值為123的對象。最后,將json對象轉換為字符串寫入文件中。

使用json-c庫讀寫JSON非常簡單,這里只是簡單的介紹了一些基本操作,如果想深入學習可以看看json-c和cJSON的官方文檔。