我从服务器到Android应用程序有以下数组响应。
[
{"1":
[{"name":"IEEE Meeting"},{"date":"2012-04-24 10:30:00"},{"Room":"ZACH102"},{"descr":"Final Meeting"},{"D":0.0057}]},
{"2":
[{"name":"Senior Design Demo"},{"date":"2012-04-24 16:30:00"},{"Room":"ZACH111A"},{"descr":"Demo"},{"D":0.019}]}
]
我在收到回复后执行转换为JSONArray。
arr = new JSONArray(sb.toString());
我如何提取名称,日期,房间等各个元素?
答案 0 :(得分:0)
您是否查看了JSONArray的文档?
从文档中,内部表单是一个对象,具有get
和opt
方法,用于按索引访问值,put
方法用于添加或替换值。值可以是以下任何类型:Boolean
,JSONArray
,JSONObject
,Number
,String
或JSONObject.NULL
对象。
如果可以找到一个get
方法,则返回一个值,如果找不到,则抛出异常。 opt
方法返回默认值而不是抛出异常,因此对于获取可选值非常有用。
泛型get()
和opt()
方法返回一个可以转换或查询类型的对象。还有类型化的get
和opt
方法可以为您进行类型检查和输入强制。
答案 1 :(得分:0)
你可以得到像这样的所有参数
JSONArray main_array = json.getJSONArray("array");
for(int i=0;i<main_array.length();i++) {
main_object = main_array.getJSONObject(i);
String name = main_object.getString("name");
String date = main_object.getString("date");
}
答案 2 :(得分:0)
所以基本上,这个顺序 对象数组1,2 - 每个对象1,2都有一组不同的对象名称,日期等。