Java 将多个JSONObject分组到JSONArray中
嗨,我有JSON的回应Java 将多个JSONObject分组到JSONArray中,java,android,json,Java,Android,Json,嗨,我有JSON的回应 [ {"sr_no":"1","stn_name":"ALUVA","arrival_time":"5:59:30","distance":"1.81"}, {"sr_no":"2","stn_name":"PULINCHUDU","arrival_time":"6:02:21","distance":"2.76"}, {"sr_no":"3","stn_name":"COMPANYPADY","arrival_time":"6:04:19","d
[
{"sr_no":"1","stn_name":"ALUVA","arrival_time":"5:59:30","distance":"1.81"},
{"sr_no":"2","stn_name":"PULINCHUDU","arrival_time":"6:02:21","distance":"2.76"},
{"sr_no":"3","stn_name":"COMPANYPADY","arrival_time":"6:04:19","distance":"3.76"},
{"sr_no":"4","stn_name":"AMBATTUKAVU","arrival_time":"6:06:15","distance":"4.72"},
{"sr_no":"5","stn_name":"MUTTOM","arrival_time":"6:08:11","distance":"8.14"},
{"sr_no":"6","stn_name":"KALAMASSERY","arrival_time":"6:11:20","distance":"8.65"},
{"sr_no":"7","stn_name":"CUSAT","arrival_time":"6:13:40","distance":"9.15"},
{"sr_no":"8","stn_name":"PATHADIPALAM","arrival_time":"6:15:52","distance":"12.02"},
{"sr_no":"9","stn_name":"EDAPPALLY","arrival_time":"6:18:12","distance":"12.55"},
{"sr_no":"10","stn_name":"CHANGAMPUZHA PARK","arrival_time":"6:20:39","distance":"13.07"},
{"sr_no":"11","stn_name":"PALARIVATTOM","arrival_time":"6:23:10","distance":"14.43"},
{"sr_no":"1","stn_name":"ALUVA","arrival_time":"5:59:30","distance":"1.81"},
{"sr_no":"2","stn_name":"PULINCHUDU","arrival_time":"6:02:21","distance":"2.76"},
{"sr_no":"3","stn_name":"COMPANYPADY","arrival_time":"6:04:19","distance":"3.76"},
{"sr_no":"4","stn_name":"AMBATTUKAVU","arrival_time":"6:06:15","distance":"4.72"},
{"sr_no":"5","stn_name":"MUTTOM","arrival_time":"6:08:11","distance":"8.14"},
{"sr_no":"6","stn_name":"KALAMASSERY","arrival_time":"6:11:20","distance":"8.65"},
{"sr_no":"7","stn_name":"CUSAT","arrival_time":"6:13:40","distance":"9.15"},
{"sr_no":"8","stn_name":"PATHADIPALAM","arrival_time":"6:15:52","distance":"12.02"},
{"sr_no":"9","stn_name":"EDAPPALLY","arrival_time":"6:18:12","distance":"12.55"},
{"sr_no":"10","stn_name":"CHANGAMPUZHA PARK","arrival_time":"6:20:39","distance":"13.07"},
{"sr_no":"11","stn_name":"PALARIVATTOM","arrival_time":"6:23:10","distance":"14.43"}
]
它都是JSONObject,但我想将前11个对象分组到数组中,然后将下11个条目分组到另一个数组中,所以响应必须如下所示:
[
[
{"sr_no":"1","stn_name":"ALUVA","arrival_time":"5:59:30","distance":"1.81"},
{"sr_no":"2","stn_name":"PULINCHUDU","arrival_time":"6:02:21","distance":"2.76"},
{"sr_no":"3","stn_name":"COMPANYPADY","arrival_time":"6:04:19","distance":"3.76"},
{"sr_no":"4","stn_name":"AMBATTUKAVU","arrival_time":"6:06:15","distance":"4.72"},{"sr_no":"5","stn_name":"MUTTOM","arrival_time":"6:08:11","distance":"8.14"},{"sr_no":"6","stn_name":"KALAMASSERY","arrival_time":"6:11:20","distance":"8.65"},{"sr_no":"7","stn_name":"CUSAT","arrival_time":"6:13:40","distance":"9.15"},{"sr_no":"8","stn_name":"PATHADIPALAM","arrival_time":"6:15:52","distance":"12.02"},{"sr_no":"9","stn_name":"EDAPPALLY","arrival_time":"6:18:12","distance":"12.55"},{"sr_no":"10","stn_name":"CHANGAMPUZHA PARK","arrival_time":"6:20:39","distance":"13.07"},{"sr_no":"11","stn_name":"PALARIVATTOM","arrival_time":"6:23:10","distance":"14.43"}
],
[{"sr_no":"1","stn_name":"ALUVA","arrival_time":"5:59:30","distance":"1.81"},{"sr_no":"2","stn_name":"PULINCHUDU","arrival_time":"6:02:21","distance":"2.76"},{"sr_no":"3","stn_name":"COMPANYPADY","arrival_time":"6:04:19","distance":"3.76"},{"sr_no":"4","stn_name":"AMBATTUKAVU","arrival_time":"6:06:15","distance":"4.72"},{"sr_no":"5","stn_name":"MUTTOM","arrival_time":"6:08:11","distance":"8.14"},{"sr_no":"6","stn_name":"KALAMASSERY","arrival_time":"6:11:20","distance":"8.65"},{"sr_no":"7","stn_name":"CUSAT","arrival_time":"6:13:40","distance":"9.15"},{"sr_no":"8","stn_name":"PATHADIPALAM","arrival_time":"6:15:52","distance":"12.02"},{"sr_no":"9","stn_name":"EDAPPALLY","arrival_time":"6:18:12","distance":"12.55"},{"sr_no":"10","stn_name":"CHANGAMPUZHA PARK","arrival_time":"6:20:39","distance":"13.07"},{"sr_no":"11","stn_name":"PALARIVATTOM","arrival_time":"6:23:10","distance":"14.43"}]]
如何做到这一点,因为我有900多张唱片。在上面我只展示了2个。如果您有任何建议,我们将不胜感激,谢谢。我正在为Android应用程序执行此操作解析原始JSON数组字符串,然后将最多包含11个对象的新JSON数组添加到一个新数组中,将每个这样的数组添加到另一个外部包含数组中:
// String input contains your string input JSON array
JSONArray jArray = new JSONArray(input); // your original JSON array
JSONArray outArray = new JSONArray(); // the output array of arrays
JSONArray temp = new JSONArray(); // holder for each internal array
for (int i=0; i < jArray.length(); i++) {
if (i % 11 == 0 && i > 0) {
outArray.put(temp);
temp = new JSONArray();
}
temp.put(jArray.getJSONObject(i));
}
//字符串输入包含字符串输入JSON数组
JSONArray jArray=新的JSONArray(输入);//您的原始JSON数组
JSONArray outArray=新的JSONArray();//数组的输出数组
JSONArray temp=新的JSONArray();//每个内部阵列的支架
for(int i=0;i0){
输出阵列输出(温度);
temp=新的JSONArray();
}
临时put(jArray.getJSONObject(i));
}
解析原始JSON数组字符串,然后将最多包含11个对象的新JSON数组添加到新数组中,将每个这样的数组添加到另一个外部包含数组中:
// String input contains your string input JSON array
JSONArray jArray = new JSONArray(input); // your original JSON array
JSONArray outArray = new JSONArray(); // the output array of arrays
JSONArray temp = new JSONArray(); // holder for each internal array
for (int i=0; i < jArray.length(); i++) {
if (i % 11 == 0 && i > 0) {
outArray.put(temp);
temp = new JSONArray();
}
temp.put(jArray.getJSONObject(i));
}
//字符串输入包含字符串输入JSON数组
JSONArray jArray=新的JSONArray(输入);//您的原始JSON数组
JSONArray outArray=新的JSONArray();//数组的输出数组
JSONArray temp=新的JSONArray();//每个内部阵列的支架
for(int i=0;i0){
输出阵列输出(温度);
temp=新的JSONArray();
}
临时put(jArray.getJSONObject(i));
}
首先将json数组读入java对象数组,然后分解成与您大小相同的数组。我更喜欢使用jackson框架。
首先将json数组读入java对象数组,然后分解成与您大小相同的数组。我更喜欢使用jackson框架。
使用JSON解析器,解析文本,重新排列,然后重新呈现为JSON。使用JSON解析器,解析文本,重新排列,然后重新呈现为JSON。我只是用不同的变量名编写了几乎完全相同的代码。。。我同意这个答案:)嗨,蒂姆,谢谢你们的回复,但我得到的异常并不是一个原始数组:class org.json.JSONArray。第JSONArray行jArray=新的JSONArray(输入);Iam将输入作为@Override public void onResponse(JSONArray response)中的内容传递{在这里,我用inputI传递响应。我刚刚用不同的变量名编码了几乎完全相同的东西……我同意这个答案:)嗨,蒂姆,谢谢你的响应,但我得到的异常不是一个原始数组:class org.json.JSONArray。在第JSONArray行jArray=new JSONArray(输入);Iam以@Override public void onResponse(JSONArray response)的形式传递输入{这里我在输入中传递响应