凌空org.json.JSONException

时间:2018-11-24 13:59:00

标签: android json android-volley jsonexception jsonobjectrequest

我正在使用截击来解析json,但是它无法正常工作并出现错误。以下是我的代码和json响应。请帮我解决这个问题

 private void getStaffList() {

        showpDialog();
        RequestQueue requestQueue = Volley.newRequestQueue(this);
        final String url = "url";


        try {

            final JSONObject jsonObj = new JSONObject();


            jsonObj.put("username", "test");
            jsonObj.put("password", "123456");


            JsonObjectRequest jsonObjReq = new JsonObjectRequest(Request.Method.POST,
                    url, jsonObj, new Response.Listener<JSONObject>() {
                @Override
                public void onResponse(JSONObject response) {
                    Log.d("TAG", "Main response=" + response);


                    staffarraylist=new ArrayList<DataModel>();;
                    try {
                        JSONObject jobSuccess=response.getJSONObject("TABLE_DATA");
                        Log.d("TAG", "JSONObj response=" + jobSuccess);
                        JSONArray jarMyData=jobSuccess.getJSONArray("data");
                        Log.d("TAG", "JSONArray response=" + jarMyData);
                        for (int i = 0; i < jarMyData.length(); i++) {
                            JSONArray jar = jarMyData.getJSONArray(i);

                            DataModel movie = new DataModel();
                            movie.setName(jar.getString(0));
                            movie.setOccupation(jar.getString(1));
                            movie.setPlace(jar.getString(2));
                            movie.setId(jar.getString(3));
                            movie.setDate(jar.getString(4));
                            movie.setPrice(jar.getString(5));
                            staffarraylist.add(movie);
                        }
                    }catch (JSONException e)
                    {
                        Log.d("JSONException",e.toString());
                    }


                    rcAdapter = new RecyclerViewAdapterHome(MainActivity.this,  staffarraylist);
                    recyclerView.setAdapter(rcAdapter);

                    hidepDialog();

                }

            }, new Response.ErrorListener() {

                @Override
                public void onErrorResponse(VolleyError error) {
                    VolleyLog.d("TAG", "JSONObj Error: " + error.getMessage());
                    hidepDialog();
                    //Toast.makeText(getApplicationContext(), error.getMessage(), Toast.LENGTH_SHORT).show();
                    // hide the progress dialog
                }
            });

            requestQueue.add(jsonObjReq);

        } catch (JSONException e) {
            e.printStackTrace();
        }

    }

Logcat

主要响应= {“ TABLE_DATA”:“ {\” data \“:[[\” Tiger Nixon \“,\” System Architect \“,\” Edinburgh \“,\” 5421 \“,\” 2011 / 04/25 \“,\” $ 320,800 \“],[\” Garrett Winters \“,\” Accountant \“,.. so

D / JSONException:org.json.JSONException:值{“ data”:[[“ Tiger Nixon”,“ System Architect”,“ Edinburgh”,“ 5421”,“ 2011/04/25”,“ $ 320,800” ],[“ Garrett Winters”,“会计”,“东京”,“ 8422”,“ 2011/07/25”,“ $

1 个答案:

答案 0 :(得分:0)

首先用 clicking here检查您的json格式是否正确,然后粘贴json以进行检查。如果响应正确,则使用Gson。它将解析响应而没有任何错误。