3 回答

TA貢獻1895條經驗 獲得超7個贊
請將結果轉換為JSONObject
JSONObject jsonObject = new JSONObject(結果);
然后嘗試得到JSONArray
JSONArray arryJ = jsonObject.getJSONArray("記錄");
請檢查 jsonObject 不為 null,因為你們也都返回了錯誤消息。您需要以不同的方式管理錯誤。
還分享您的 json,以便我們可以與您分享確切的問題。
更新答案::
為了避免解析錯誤,您可以檢查
if(jsonObject.hasKey("records")){
//get Value of records
}

TA貢獻1827條經驗 獲得超8個贊
問題實際上出在 JSONArray jarray 上。該語句之前必須有一個 JSONObject。喜歡-
JSONObject a = new JSONObject(s);
JSONArray jArray = a.getJSONArray("records");
for(int i=0;i<jArray.length();i++){
JSONObject json_data = jArray.getJSONObject(i);
當沒有給 JSON 數組指定名稱時,應該使用上面的代碼。這意味著在上面的 JSON 中,如果“記錄”不存在,那么問題中的代碼將起作用。意思是,這會起作用-
//JSONObject a = new JSONObject(s);
JSONArray jArray = a.getJSONArray(s);
for(int i=0;i<jArray.length();i++){
JSONObject json_data = jArray.getJSONObject(i);
感謝所有幫助和嘗試過的人!?。。?/p>
添加回答
舉報