为了账号安全,请及时绑定邮箱和手机立即绑定

如何在java中读取嵌套的非数组JSON?

如何在java中读取嵌套的非数组JSON?

Cats萌萌 2023-08-16 18:24:50
我有一个 JSON 文件: "items": [  {   (...)   "volumeInfo": {    (...)    "readingModes": {     "text": true,     "image": true    },    (...)  }如何访问“readingModes”中的“图像”和“文本”?我都尝试过JSONArray readingModes = volumeInfo.optJSONArray("readingModes");它适用于带有方括号的数据,但在本例中返回空值和JSONObject readingModes = gobj.getJSONObject("readingModes");返回错误 - JSONObject["readingModes"] 未找到,其中访问 gobj:JSONObject jobj = new JSONObject(jsonData);JSONArray items = jobj.getJSONArray("items");Iterator i = items.iterator();while(i.hasNext()){    JSONObject gobj = (JSONObject) i.next();(...)}
查看完整描述

1 回答

?
叮当猫咪

TA贡献1776条经验 获得超12个赞

JSONObject jobj = new JSONObject(jsonData);

JSONArray items = jobj.getJSONArray("items");

Iterator i = items.iterator();

while(i.hasNext())

{

    JSONObject gobj = (JSONObject) i.next();

    JSONObject volumeInfo = gobj.getJSONObject('volumeInfo');

    JSONObject readingModes = volumeInfo.getJSONObject('readingModes');

(...)

}

根据您的 JSON,您需要执行此操作。由于readingModes是在volumeInfo,首先需要获取volumeInfo的JSON对象才能访问readingModes。


查看完整回答
反对 回复 2023-08-16
  • 1 回答
  • 0 关注
  • 112 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信