使用GSON仅解析选定的JSON节点

时间:2018-01-09 12:08:48

标签: android json gson

通过我无法更改的Web服务,我收到了以下格式的JSON响应:

{
    "response": {
        "profile": {
            "id": 8873,
             ....
             ....
       }
    }
}

我正在使用GSON的Retrofit来最终使用存储在POJO中的已解析JSON。

有没有办法可以直接获取profile对象内的数据,在POJO中,并跳过处理response

我基本上不想写一个额外的类来保存response的对象。

1 个答案:

答案 0 :(得分:1)

如果您正在使用json lib,您可以先将响应体取出,然后使用gson将此json字符串转换为POJO。

import net.sf.json.JSONObject;
public void partJson() {
    String response = "{\n" +
            "    \"response\": {\n" +
            "        \"profile\": {\n" +
            "            \"id\": 8873\n" +
            "       }\n" +
            "    }\n" +
            "}";

    JSONObject responseObject = new JSONObject().fromObject(response);
    JSONObject jsonObject = responseObject.optJSONObject("response");

}