我正在尝试使用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);
我希望你们能帮我这个,我现在真的很难过。
答案 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构造函数提供字符串作为参数。