CJSON是一個(gè)絕佳的JSON格式解析和生成庫(kù),它可以幫助開(kāi)發(fā)者更加方便快捷地解析JSON數(shù)據(jù)。CJSON可以將JSON解析成C、Lua、Python等語(yǔ)言中的數(shù)據(jù)結(jié)構(gòu),同時(shí)也可以將這些數(shù)據(jù)結(jié)構(gòu)轉(zhuǎn)換為JSON格式。本文將介紹如何使用CJSON將JSON轉(zhuǎn)換成表格。
// JSON數(shù)據(jù) { "name": "張三", "age": 18, "gender": "男", "score": { "math": 90, "english": 80, "chinese": 75 } } // 解析JSON數(shù)據(jù) cJSON *json = cJSON_Parse(json_str); if (json == NULL) { printf("json parse error.\n"); return; } // 構(gòu)建表頭 printf("| %-10s| %-5s| %-5s| %-5s|\n", "姓名", "年齡", "性別", "數(shù)學(xué)成績(jī)"); // 解析JSON數(shù)據(jù)并輸出表格 cJSON *name = cJSON_GetObjectItem(json, "name"); cJSON *age = cJSON_GetObjectItem(json, "age"); cJSON *gender = cJSON_GetObjectItem(json, "gender"); cJSON *score = cJSON_GetObjectItem(json, "score"); double math_score = cJSON_GetObjectItem(score, "math")->valuedouble; printf("| %-10s| %-5d| %-5s| %-5.2f|\n", name->valuestring, age->valueint, gender->valuestring, math_score);
如上所示,我們首先需要解析JSON數(shù)據(jù),然后根據(jù)JSON數(shù)據(jù)結(jié)構(gòu)構(gòu)建表頭,最后根據(jù)JSON數(shù)據(jù)中的數(shù)據(jù)項(xiàng)解析出各列數(shù)據(jù)并輸出。
CJSON的使用非常方便,通過(guò)以上方法就可以實(shí)現(xiàn)JSON數(shù)據(jù)到表格的轉(zhuǎn)換。
上一篇python 適合女性嗎
下一篇python 退格鍵亂碼