在使用C語言處理JSON數據時,我們需要從JSON對象中獲取其值,這可以通過json_object_get函數來實現。
// 示例JSON數據 const char* jsonStr = "{ \"name\": \"小明\", \"age\": 18, \"score\": { \"english\": 90, \"math\": 95 } }"; // 解析 json_object* jsonObj = json_tokener_parse(jsonStr); // 獲取值 const char* nameValue = json_object_get_string(json_object_object_get(jsonObj, "name")); int ageValue = json_object_get_int(json_object_object_get(jsonObj, "age")); json_object* scoreObject= json_object_object_get(jsonObj, "score"); int englishValue = json_object_get_int(json_object_object_get(scoreObject, "english"));
上述代碼中,我們首先將JSON數據解析為JSON對象jsonObj
,然后使用json_object_object_get
函數獲取子對象,再使用json_object_get_****
函數獲取具體的值,如獲取名稱的字符串、年齡的整數、英語成績的整數。
需要注意的是,獲取JSON對象中的值時,需要使用對應的類型函數。例如,獲取整數值時需使用json_object_get_int
函數,獲取字符串值時需使用json_object_get_string
函數。