zkjazd 2016-12-16 07:32 采纳率: 0%
浏览 851

json解析公交出错了,集合多了数据,这个怎么解决,求大神解决

这段代码用json解析后,每一条线路都包含了正反两条线的站点信息,我的解析哪里错了?
jsonandroid
{
"reason": "success",
"result": [
{
"terminal_name": "乐林路金高路",
"front_spell": "",
"line_id": "3100000056",
"key_name": "1006路",
"time_desc": "",
"front_name": "东力新村",
"stationdes": [
{
"code": "31",
"stationNum": "1",
"name": "东力新村",
"xy": "121.625083,31.286745"
},
{
"code": "31",
"stationNum": "2",
"name": "申江路巨峰路",
"xy": "121.625110,31.281242"
},
{
"code": "31",
"stationNum": "3",
"name": "巨峰路申江路",
"xy": "121.623519,31.279929"
},
{
"code": "31",
"stationNum": "4",
"name": "巨峰路金京路",
"xy": "121.616060,31.279941"
},
{
"code": "31",
"stationNum": "5",
"name": "巨峰路金高路",
"xy": "121.608726,31.280371"
},
{
"code": "31",
"stationNum": "6",
"name": "乐林路金高路",
"xy": "121.609186,31.279265"
}
],
"description": "",
"start_time": "0630",
"photo_folder": "",
"gpsfile_id": "",
"data_source": "",
"total_price": "0.000000",
"company": "金高公交",
"speed": "",
"length": "2.844000",
"loop": "0",
"auto": "",
"ic_card": "",
"double_deck": "",
"express_way": "",
"status": "1",
"basic_price": "0.000000",
"end_time": "1900",
"air": "",
"terminal_spell": "",
"type": "list",
"paper_table_id": "",
"name": "1006路(东力新村-乐林路金高路)",
"commutation_ticket": "0"
},
{
"terminal_name": "东力新村",
"front_spell": "",
"line_id": "3100000057",
"key_name": "1006路",
"time_desc": "",
"front_name": "乐林路金高路",
"stationdes": [
{
"code": "31",
"stationNum": "1",
"name": "乐林路金高路",
"xy": "121.609186,31.279265"
},
{
"code": "31",
"stationNum": "2",
"name": "巨峰路金高路",
"xy": "121.610286,31.280054"
},
{
"code": "31",
"stationNum": "3",
"name": "巨峰路金京路",
"xy": "121.616089,31.279699"
},
{
"code": "31",
"stationNum": "4",
"name": "巨峰路申江路",
"xy": "121.624142,31.279718"
},
{
"code": "31",
"stationNum": "5",
"name": "申江路巨峰路",
"xy": "121.625393,31.280429"
},
{
"code": "31",
"stationNum": "6",
"name": "东力新村",
"xy": "121.625083,31.286745"
}
],
"description": "",
"start_time": "0639",
"photo_folder": "",
"gpsfile_id": "",
"data_source": "",
"total_price": "0.000000",
"company": "金高公交",
"speed": "",
"length": "2.432000",
"loop": "0",
"auto": "",
"ic_card": "",
"double_deck": "",
"express_way": "",
"status": "1",
"basic_price": "0.000000",
"end_time": "1909",
"air": "",
"terminal_spell": "",
"type": "list",
"paper_table_id": "",
"name": "1006路(乐林路金高路-东力新村)",
"commutation_ticket": "0"
}
],
"error_code": 0
}
下面的是我的解析
package com.tarena.busapp.util;
import android.util.Log;
import com.tarena.busapp.entity.Result;
import com.tarena.busapp.entity.Stationdes;
import org.json.JSONArray;
import org.json.JSONObject;
import java.util.ArrayList;
import java.util.List;
public class JSONParser {
private static Result result;
private static Stationdes st;
private static List stationdes;
public static List parseBusAry(JSONArray resultAry) throws Exception {
List resultList = new ArrayList<>();
stationdes = new ArrayList<>();
for (int i = 0; i < resultAry.length(); i++) {
JSONObject obj = resultAry.getJSONObject(i);
String terminal_name = obj.getString("terminal_name");
String line_id = obj.getString("line_id");
String key_name = obj.getString("key_name");
String front_name = obj.getString("front_name");
String start_time = obj.getString("start_time");
String company = obj.getString("company");
String length = obj.getString("length");
String end_time = obj.getString("end_time");
String name = obj.getString("name");
JSONArray stationAry = obj.getJSONArray("stationdes");
String code = null;
String stationNum = null;
String stationname = null;
String xy = null;
for (int j = 0; j < stationAry.length(); j++) {
JSONObject stationObj = stationAry.getJSONObject(j);
code = stationObj.getString("code");
stationNum = stationObj.getString("stationNum");
stationname = stationObj.getString("name");
xy = stationObj.getString("xy");
st = new Stationdes(code, stationNum, stationname, xy);
stationdes.add(st);
}
result = new Result(terminal_name, line_id, key_name, front_name, stationdes, start_time, company, length, end_time, name);
resultList.add(result);
}
Log.d("zkj", "" + resultList);
return resultList;
}
}

  • 写回答

2条回答 默认 最新

  • zkjazd 2016-12-16 07:51
    关注

    已解决,谢谢咯,创建集合的时机不对,结果错误了

    评论

报告相同问题?

悬赏问题

  • ¥20 腾讯企业邮箱邮件可以恢复么
  • ¥15 有人知道怎么将自己的迁移策略布到edgecloudsim上使用吗?
  • ¥15 错误 LNK2001 无法解析的外部符号
  • ¥50 安装pyaudiokits失败
  • ¥15 计组这些题应该咋做呀
  • ¥60 更换迈创SOL6M4AE卡的时候,驱动要重新装才能使用,怎么解决?
  • ¥15 让node服务器有自动加载文件的功能
  • ¥15 jmeter脚本回放有的是对的有的是错的
  • ¥15 r语言蛋白组学相关问题
  • ¥15 Python时间序列如何拟合疏系数模型