在C語言中,想要從JSON對象中獲取特定的值,需要使用第三方庫。
其中,比較常用的是cJSON這個庫。
// 引入cJSON庫頭文件 #include "cJSON.h" // 解析JSON字符串 char jsonString[] = "{\"name\":\"張三\",\"age\":18}"; cJSON *root = cJSON_Parse(jsonString); // 獲取name字段的值 cJSON *nameObj = cJSON_GetObjectItemCaseSensitive(root, "name"); char *name = cJSON_GetStringValue(nameObj); printf("name: %s\n", name); // 獲取age字段的值 cJSON *ageObj = cJSON_GetObjectItemCaseSensitive(root, "age"); int age = cJSON_GetNumberValue(ageObj); printf("age: %d\n", age); // 釋放cJSON對象 cJSON_Delete(root);
其中,cJSON_Parse函數(shù)可以將JSON字符串轉(zhuǎn)成cJSON對象。
cJSON_GetObjectItemCaseSensitive函數(shù)用于獲取對象中指定的字段。
如果要獲取字符串類型的值,需要再調(diào)用cJSON_GetStringValue函數(shù);如果要獲取數(shù)字類型的值,則需要調(diào)用cJSON_GetNumberValue函數(shù)。
最后別忘了調(diào)用cJSON_Delete函數(shù)釋放cJSON對象。
上一篇mysql倒序查詢過程
下一篇hive怎么把json