首页 > 解决方案 > java.lang.String 类型的值失败无法转换为 JSONObject

问题描述

下订单时,我在送餐应用程序中遇到错误

public void resultAlert(String HasilProses) {
        Log.e("HasilProses", HasilProses);

        
        try {
            JSONObject jsonObject = new JSONObject(HasilProses);

            JSONArray jsonArray = jsonObject.getJSONArray("ORDER_PLACED");

            for (int i = 0; i < jsonArray.length(); i++) {

                JSONObject object = jsonArray.getJSONObject(i);
                String error = object.getString("error");
                int order_id = Integer.parseInt(object.getString("order_id"));
                Constant_Api.order_id = order_id;
                String message = object.getString("message");

                
                dbhelper.deleteAllData();
                if (payable>0) {
                    startPayment();
                }
                else{
                    lytOrder.setVisibility(View.GONE);
                    txtAlert.setVisibility(View.GONE);
                    recyclerView.setVisibility(View.GONE);
                    paymentUpdate("0");
                }
            }
        } catch (JSONException e) {
            e.printStackTrace();
        }
    }

我的Logcat错误和JSON回应

 Failed{
    "ORDER_PLACED": [
        {
            "error": "true",
            "message": "Failed"
        }
    ]
}

W / System.err:org.json.JSONException:Java.lang.String类型的值失败无法转换为JSONObject

W/System.err:在 org.json.JSON.typeMismatch(JSON.java:112) 在 org.json.JSONObject.(JSONObject.java:168)

W/System.err:在 org.json.JSONObject.(JSONObject.java:181)

标签: javajson

解决方案


推荐阅读