在C語言中,可以使用JSON來描述數據結構,在進行編程中,需要將JSON數據轉換為列表字符串來進行操作。以下是使用C語言進行JSON轉換列表字符串的方法。
#include <stdio.h> #include <stdlib.h> #include <string.h> #include <json-c/json.h> int main() { char *json_str = "{" "\"name\": \"Tom\"," "\"age\": 20," "\"scores\": [60, 70, 80]" "}"; struct json_object *json_obj, *name_obj, *age_obj, *scores_obj, *score_obj; char name[30], *score_str; int age, i, score_len, score_int; // 解析JSON字符串 json_obj = json_tokener_parse(json_str); json_object_object_get_ex(json_obj, "name", &name_obj); json_object_object_get_ex(json_obj, "age", &age_obj); json_object_object_get_ex(json_obj, "scores", &scores_obj); // 獲取姓名和年齡 strcpy(name, json_object_get_string(name_obj)); age = json_object_get_int(age_obj); // 獲取成績列表 score_str = strdup(json_object_to_json_string(scores_obj)); score_len = strlen(score_str); for (i = 1; i< score_len - 1; i++) { if (score_str[i] == ',') { score_str[i] = ';'; } } // 打印轉換后的字符串 printf("%s %d %s\n", name, age, score_str); // 釋放內存 json_object_put(json_obj); free(score_str); return 0; }
通過以上代碼,我們可以將JSON數據轉換為姓名、年齡、成績列表字符串,并進行相應的操作。
總結:在C語言中,使用JSON解析庫進行字符串的解析和轉換,可以方便地將JSON數據轉換為所需的字符串類型。在實際編程中,需要根據不同的需求,進行合理的數據結構的定義和操作。
上一篇python 文件數組中
下一篇mysql創建表出錯