在使用C語言中處理JSON格式的數(shù)據(jù)時,獲取JSON對象的值是一個非常基礎也是非常重要的操作。下面我們來講一下如何獲取JSON對象中的值。
// 假設我們有一個JSON對象如下: // {"name": "張三", "age": 18, "isStudent": true, "hobbies": ["籃球", "游泳", "唱歌"]} // 我們可以通過C語言中的json庫,將這個JSON對象解析成一個json_t結(jié)構(gòu)體變量: json_t *root = NULL; json_error_t error; root = json_loads(json_string, 0, &error); // 然后我們可以通過以下代碼獲取JSON對象中的各個值: json_t *data = NULL; data = json_object_get(root, "name"); const char *name = json_string_value(data); // 獲取"name"的值,即"張三" data = json_object_get(root, "age"); int age = json_integer_value(data); // 獲取"age"的值,即18 data = json_object_get(root, "isStudent"); int isStudent = json_boolean_value(data); // 獲取"isStudent"的值,即1 data = json_object_get(root, "hobbies"); json_t *hobbies = json_array_get(data, 0); // 獲取"hobbies"的第一個值,即"籃球" const char *hobby = json_string_value(hobbies); // 上面的代碼中,我們首先通過json_object_get函數(shù)獲取JSON對象中對應key的值,然后根據(jù)值的類型使用對應的函數(shù)獲取值。