org.json.JSONException:没有id的值

时间:2014-10-30 09:41:24

标签: java android json

我正在尝试使用edittext解析json,使其与id匹配,并在textview中加载它携带的数据。我不确定如何解决这个问题,无论是使用正确的JSON,还是我使用正确的方法来确定最有效的方法来处理这个问题。当我在edittext中输入'5'时,我得到下面提到的错误:

错误:

org.json.JSONException: No value for id

正在解析url的JSON:

{
"id": "5",
"first_name": "Larry",
"last_name": "Gonzales",
"email": "lgonzales4@msu.edu",
"country": "Japan",
"ip_address": "242.198.195.241"

}

爪哇:

        try {


            JSONObject e = new JSONObject();
            JSONObject jsonobjectidloader = e.getJSONObject(TAG_ID);

      if (jsonobjectidloader.equals(xyz)){

                uid.setText(id3);
                id3 = jsonobjectidloader.getString(TAG_ID);
                name1.setText(fname);
                fname = jsonobjectidloader.getString(TAG_FIRST_NAME);
                name2.setText(lname);
                lname = jsonobjectidloader.getString(TAG_LAST_NAME);
                email1.setText(email);
                email = jsonobjectidloader.getString(TAG_EMAIL);
                ipaddres.setText(ipa);
                ipa = jsonobjectidloader.getString(TAG_IP);
                cou.setText(country);
                country = jsonobjectidloader.getString(TAG_COUNTRY);

我希望你们能帮我这个,我现在真的很难过。

3 个答案:

答案 0 :(得分:2)

JSONObject e = new JSONObject(response.toString());

String id3 = e.getString(TAG_ID);

响应是来自服务器的json

答案 1 :(得分:1)

使用以下代码。

JSONObject jsonobjectidloader= new JSONObject(YOUR_JSON_STRING);

 if (jsonobjectidloader.equals(xyz)){

            id3 = jsonobjectidloader.getString(TAG_ID);
            uid.setText(id3);
            fname = jsonobjectidloader.getString(TAG_FIRST_NAME);
            name1.setText(fname);
            lname = jsonobjectidloader.getString(TAG_LAST_NAME);
            name2.setText(lname);
            email = jsonobjectidloader.getString(TAG_EMAIL);
            email1.setText(email);
            ipa = jsonobjectidloader.getString(TAG_IP);
            ipaddres.setText(ipa);
            country = jsonobjectidloader.getString(TAG_COUNTRY);
            cou.setText(country);

答案 2 :(得分:0)

只需将其用作

String json = '{"id":"5","first_name":"Larry","last_name":"Gonzales","email":"lgonzales4@msu.edu","country":"Japan","ip_address":"242.198.195.241"}';
e = new JSONObject(json);
.....

你需要实际为jsonboject构造函数提供字符串作为参数。