【问题标题】:JSONArray recognized as JSONObjectJSONArray 被识别为 JSONObject
【发布时间】:2019-05-08 07:15:55
【问题描述】:

我创建了一个 JSONArray“appelliLista”,它被识别为 JSONObject。所以我不能循环检索每条记录的数据。

                   //Recovering data object 
                    JSONObject obj = new JSONObject(response);
                    JSONObject disponibiliì = obj.getJSONObject("result");

                    JSONArray lista = disponibiliì.getJSONArray("appelliLista"); //not working
                    JSONObject  lista2 = disponibiliì.getJSONObject("appelliLista"); //working in the wrong way no error but just cant loop

JSON 响应

`

{
"service": "appelliLista",
"status-code": 200,
"status-description": "success",
"time-spent": 0.116739,
"server-time": "07/05/2019-04:03:57pm",
"result": {
"appelliLista": {
1: {
"Attivita didattica": "SISTEMI OPERATIVI",
"Appello": "22/05/2019",
"Iscrizione": "07/05/201920/05/2019",
"Descrizione": "SISTEMI OPERATIVI",
"Sessioni": "2018/2019",
"link": "APP_ID=62&CDS_ESA_ID=10047&ATT_DID_ESA_ID=5868&ADSCE_ID=20148812&AA_OFF_ID=2014&CDS_ID=10047&PDS_ID=9999&AA_ORD_ID=2013&ISCR_APERTA=1&TIPO_ATTIVITA=1&TIPO_APP_COD=0"
}
}
}
}

`

【问题讨论】:

  • 检查你的 api/web 服务
  • 您的 json 数组错误,请参阅 jsonlint.com 并验证 json
  • 根据jsonResponse没有JSONArray,所以代码是对的。您需要检查您的网络服务。
  • 没关系,appelliLista 是一个对象,而不是数组:"appelliLista": { - 注意它以 { 开头 - 更多信息请参见 en.wikipedia.org/wiki/JSON#Data_types_and_syntax
  • 你能展示一下正确的格式吗?

标签: android arrays json


【解决方案1】:

Json数组格式为

"appelliLista":[
  {....},
  {....}
]

您的 json 元素 appelliLista 是一个 json 对象,因此无法解析为数组

【讨论】:

    【解决方案2】:

    假设您的 JSON 对象如下所示,您可以通过这种方式简单地对其进行迭代:

            var object = {
                "service": "appelliLista",
                    "status-code": 200,
                        "status-description": "success",
                            "time-spent": 0.116739,
                                "server-time": "07/05/2019-04:03:57pm",
                                    "result": {
                                                "appelliLista": {
                                                    1: {
                                                        "Attivita didattica": "SISTEMI OPERATIVI",
                                                            "Appello": "22/05/2019",
                                                                "Iscrizione": "07/05/201920/05/2019",
                                                                    "Descrizione": "SISTEMI OPERATIVI",
                                                                        "Sessioni": "2018/2019",
                                                                            "link": "APP_ID=62&CDS_ESA_ID=10047&ATT_DID_ESA_ID=5868&ADSCE_ID=20148812&AA_OFF_ID=2014&CDS_ID=10047&PDS_ID=9999&AA_ORD_ID=2013&ISCR_APERTA=1&TIPO_ATTIVITA=1&TIPO_APP_COD=0"
                                                    }
                                                }
                }
            }
    
    
    
    
            for (key in object) {
                console.log(key + " : " + object[key]);
            }

    【讨论】:

    猜你喜欢
    • 2012-08-30
    • 2016-06-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-15
    • 1970-01-01
    相关资源
    最近更新 更多