【发布时间】:2016-01-05 22:43:42
【问题描述】:
我一直想知道如何在android中解析JSON数组?
我有一个这样的 json 对象:[{"ID":"1","email":"email@mail.mail","password":"password"},{"ID":"2","email":"test@test.com","password":"passward"}]
但我找不到如何解析它,我想访问数据,以便获得第一封邮件或第二个 id。
我尝试了大约 40 种不同的解决方案,但都没有成功。
我上次尝试是这样的:
private void showJSON(String json){
try {
JSONArray jArray = new JSONArray(json);
String JsonString = jArray["ID"];
tv.append(JsonString);
} catch (JSONException e) {e.printStackTrace();}
}
但它需要一个数组而不是 json 数组。还没找到怎么转成数组呢。
我也试过这个:
for (int i = 0; i < jsonarray.length(); i++) {
JSONObject jsonobject = jsonarray.getJSONObject(i);
String name = jsonobject.getString("email");
}
但 getJSONObject 不存在。
感谢您的帮助。
【问题讨论】:
-
"但 getJSONObject 不存在" -- sure it does。据推测,
jsonarray不是JSONArray。使用 Gson、Jackson 或其他更现代的 JSON 解析库可能会更开心。