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

c 讀取和保存json文件

夏志豪1年前8瀏覽0評論

C語言是一種廣泛應用于系統編程、嵌入式系統和網絡編程等領域的高級編程語言。C語言代碼通常較為簡單,執行效率高,因此被越來越多的開發者所青睞。在C語言中,讀取和保存JSON文件是常見的操作,下面我們就來看看如何實現這一過程。

C語言的JSON文件讀取和保存操作可以使用第三方庫cJSON。cJSON是一種輕巧快速的JSON解析器,提供了簡單易用且高效的API,在C語言中讀取和保存JSON文件變得非常簡單。下面是一個JSON文件讀取的示例:

#include "cJSON.h"
#includeint main()
{
char *json_str = "{\"name\":\"Tom\",\"age\":20}";
cJSON *root = cJSON_Parse(json_str);
cJSON *name = cJSON_GetObjectItem(root, "name");
cJSON *age = cJSON_GetObjectItem(root, "age");
printf("name:%s, age:%d", name->valuestring, age->valueint);
cJSON_Delete(root);
return 0;
}

首先,我們需要快速解析JSON字符串,這里使用cJSON庫提供的cJSON_Parse()函數。然后我們可以使用cJSON_GetObjectItem()函數獲取JSON對象中的某個屬性,最后使用cJSON_Delete()函數釋放內存。

除了讀取JSON文件,C語言中保存JSON文件也很常見。保存JSON文件通常使用文件操作相關API,這里我們介紹一種在cJSON中完成JSON文件保存的方法。

#include "cJSON.h"
#includeint main()
{
cJSON *root = cJSON_CreateObject();
cJSON_AddStringToObject(root, "name", "Tom");
cJSON_AddNumberToObject(root, "age", 20);
char *json_str = cJSON_Print(root);
FILE *fp;
fp = fopen("test.json", "w");
fputs(json_str, fp);
fclose(fp);
cJSON_Delete(root);
return 0;
}

我們使用cJSON_CreateObject()函數創建JSON對象,使用cJSON_AddStringToObject()cJSON_AddNumberToObject()函數向JSON對象中添加屬性。接著使用cJSON_Print()函數將JSON對象轉換成字符串,之后使用文件操作相關APIfopen()fputs()將字符串寫入JSON文件中,最后使用cJSON_Delete()釋放內存。