JSON即JavaScript對象表示法,是一種輕量級的數據交換格式。C語言有很多第三方庫可以支持JSON的解析和生成,比如cJSON。
#include "cJSON.h" #include#include int main() { char *json_string = "{ \"name\": \"小明\", \"age\": 20 }"; //JSON格式字符串 //解析JSON字符串 cJSON *json = cJSON_Parse(json_string); if(!json) { printf("解析JSON字符串失敗\n"); return -1; } //獲取解析結果中的字符串和數字 cJSON *name = cJSON_GetObjectItemCaseSensitive(json, "name"); cJSON *age = cJSON_GetObjectItemCaseSensitive(json, "age"); if(!name || !cJSON_IsString(name) || !age || !cJSON_IsNumber(age)) { printf("獲取JSON中的字符串和數字失敗\n"); cJSON_Delete(json); return -1; } //打印結果 printf("姓名: %s\n", name->valuestring); printf("年齡: %d\n", age->valueint); //生成JSON對象 cJSON *new_json = cJSON_CreateObject(); cJSON_AddStringToObject(new_json, "name", "小紅"); cJSON_AddNumberToObject(new_json, "age", 18); //生成JSON格式字符串 char *new_json_string = cJSON_Print(new_json); printf("新的JSON字符串: %s\n", new_json_string); cJSON_Delete(json); cJSON_Delete(new_json); free(new_json_string); return 0; }
上面的代碼演示了如何使用cJSON庫解析JSON格式字符串,并獲取其中的字符串和數字。同時也展示了如何生成JSON對象和JSON格式字符串。
上一篇vue 自動掛載組件
下一篇c# 接口訪回json