试图在JSONObject中获取JSONObject

时间:2016-05-27 21:14:36

标签: android json

我创造了这个json:

{  
   "error":false,
   "0":{  
      "tvInfo":{  
         "id":"0",
         "nome":"A Guerra dos Tronos",
         "id_tipo":"1",
         "pontuacao":"8.1",
         "nVotos":"780",
         "data_criado":"2011-04-17",
         "data_acabado":"0000-00-00",
         "id_estado":"4",
         "id_canaldono":"3",
         "idade_aconselhavel":"16",
         "tags":"war;based on novel;kingdom;dragon;king;intrigue;fantasy;world;\r\n\r\n",
         "nTemporadas":"6",
         "data_inserido":"2016-05-26 22:40:09",
         "data_ultima_atualizacao":"2016-05-26 22:40:09"
      },
      "categorias":[  
         "Sci-Fi",
         "Action & Adventure",
         "Drama"
      ],
      "descricoes":[  
         {  
            "texto":"bababababa",
            "id_idioma":"1"
         },
         {  
            "texto":"bababababa",
            "id_idioma":"2"
         }
      ],
      "criadores":[  
         [  
            "David Benioff",
            "46",
            "1970",
            "USA",
            "New York",
            "babababa",
            "",
            ""
         ],
         [  
            "D. B. Weiss",
            "0",
            "1971-04-23",
            "",
            "",
            "",
            "",
            ""
         ]
      ],
      "fotos":[  
         {  
            "tipofoto":"0",
            "url":"\/uploads\/series\/gameofthrones1.png"
         },
         {  
            "tipofoto":"0",
            "url":"\/uploads\/series\/gameofthrones1Background.png"
         }
      ],
      "trailers":[  

      ]
   },
...

我希望从0开始的所有内容都是“id?” 0所以我这样做了:

JSONObject tv1 = jObj.getJSONObject("0");

它确实有效,但后来我试图获得“照片”,所以我确实喜欢这个:

JSONObject tv1Fotos = tv1.getJSONObject("fotos");

它起作用了。它得到方法抛出JSONException

1 个答案:

答案 0 :(得分:6)

因为您正在呼叫getJSONObject()fotos是一个数组

使用getJSONArray()代替