急急急!!!android里json解析问题
答案:2 悬赏:70 手机版
解决时间 2021-11-30 13:46
- 提问者网友:抽煙菂渘情少年
- 2021-11-29 17:55
急急急!!!android里json解析问题
最佳答案
- 五星知识达人网友:毛毛
- 2021-11-29 18:20
根据你的错误提示,应该说的是city没有值,而不是没有city这个键
你看看返回的字符串里面是否有city的数据追问有city这个值啊 但是解释的时候总是说那个值空追答能提供你的数据和解析代码吗?追问{"status":"0","msg":"ok","result":{"city":"清远","cardtype":"GSM","province":"广东","company":"中国移动"}}
JSONObject json=new JSONObject(str);
String city = json.getString("city");追答你的解析代码有问题
正确的解析代码应该如下
JSONObject json = new JSONObject(str);
JSONObject result = json.getJSONObject("result");
String city = result.getString("city");追问
还是不行.... 请在帮我看看吧
追答
不是str,是"result"
追问按照你所说的改了 还是不行
追答这个已经不是json数据解析错误了,是你的其他的问题了追问我擦 这么坑爹 才刚学 啊追答嗯,慢慢学吧,加油追问十分感谢 我知道什么问题 原来是没有加网络权限 加了就好了 谢谢你的指导
你看看返回的字符串里面是否有city的数据追问有city这个值啊 但是解释的时候总是说那个值空追答能提供你的数据和解析代码吗?追问{"status":"0","msg":"ok","result":{"city":"清远","cardtype":"GSM","province":"广东","company":"中国移动"}}
JSONObject json=new JSONObject(str);
String city = json.getString("city");追答你的解析代码有问题
正确的解析代码应该如下
JSONObject json = new JSONObject(str);
JSONObject result = json.getJSONObject("result");
String city = result.getString("city");追问
还是不行.... 请在帮我看看吧
追答
不是str,是"result"
追问按照你所说的改了 还是不行
追答这个已经不是json数据解析错误了,是你的其他的问题了追问我擦 这么坑爹 才刚学 啊追答嗯,慢慢学吧,加油追问十分感谢 我知道什么问题 原来是没有加网络权限 加了就好了 谢谢你的指导
全部回答
- 1楼网友:忘川信使
- 2021-11-29 19:18
简单的给你做了下解析,具体要解析到什么程度,你自己看吧。大概解析方法就是这样的:
如下:
privatevoid testJson(){
String JsonData = "[{\"id\":[\"386\",\"381\",\"379\",\"377\"],\"num\":[\"386\",\"381\",\"379\",\"377\"]},{\"id\":[\"3860\",\"3810\",\"3790\",\"3770\"],\"num\":[\"3860\",\"3810\",\"3790\",\"3770\"]}]";
JSONObject obj = null;
JSONArray jsonArary;
try {
jsonArary = new JSONArray(JsonData);
for(int i=0;i obj = jsonArary.getJSONObject(i);
//取ID
JSONArray strID = obj.getJSONArray("id");
for(int j=0;j Log.v("ID:", strID.get(j).toString());
}
//取num
JSONArray strNum = obj.getJSONArray("num");
for(int k=0;k Log.v("NUM:", strNum.get(k).toString());
}
}
} catch (JSONException e) {
e.printStackTrace();
}
}追问解析的方法我会 但就是出错 说city 的值没有啊
如下:
privatevoid testJson(){
String JsonData = "[{\"id\":[\"386\",\"381\",\"379\",\"377\"],\"num\":[\"386\",\"381\",\"379\",\"377\"]},{\"id\":[\"3860\",\"3810\",\"3790\",\"3770\"],\"num\":[\"3860\",\"3810\",\"3790\",\"3770\"]}]";
JSONObject obj = null;
JSONArray jsonArary;
try {
jsonArary = new JSONArray(JsonData);
for(int i=0;i
//取ID
JSONArray strID = obj.getJSONArray("id");
for(int j=0;j
}
//取num
JSONArray strNum = obj.getJSONArray("num");
for(int k=0;k
}
}
} catch (JSONException e) {
e.printStackTrace();
}
}追问解析的方法我会 但就是出错 说city 的值没有啊
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯