首页 公交地铁查询 公交地铁查询示例代码 线路查询[Java]

线路查询示例代码[Java]

作者:xiezhongpian 阅读数:1025 上传时间:2017-05-09

线路查询

package api.binstd.transit;

import api.util.HttpUtil;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;

public class Line {

	public static final String APPKEY = "your_appkey_here";// 你的appkey
	public static final String URL = "http://api.binstd.com/transit/line";
	public static final int cityid = 382;// 杭州
	public static final String transitno = "86";// utf-8

	public static void Get() {
		String result = null;
		String url = URL + "?cityid=" + cityid + "&transitno=" + transitno + "&appkey=" + APPKEY;

		try {
			result = HttpUtil.sendGet(url, "utf-8");
			JSONObject json = JSONObject.fromObject(result);
			if (json.getInt("status") != 0) {
				System.out.println(json.getString("msg"));
			} else {
				JSONArray resultarr = json.optJSONArray("result");
				for (int i = 0; i < resultarr.size(); i++) {
					JSONObject data = (JSONObject) resultarr.opt(i);
					String transitno = data.getString("transitno");
					String startstation = data.getString("startstation");
					String endstation = data.getString("endstation");
					String starttime = data.getString("starttime");
					String endtime = data.getString("endtime");
					String price = data.getString("price");
					String maxprice = data.getString("maxprice");
					System.out.println(transitno + " " + startstation + " " + endstation + " " + starttime + " "
							+ endtime + " " + price + " " + maxprice);
					if (data.opt("list") != null) {
						JSONArray list = data.optJSONArray("list");
						for (int j = 0; j < list.size(); j++) {
							JSONObject list_obj = (JSONObject) list.opt(j);
							String sequenceno = list_obj.getString("sequenceno");
							String station = list_obj.getString("station");
							String lat = list_obj.getString("lat");
							String lng = list_obj.getString("lng");
							System.out.println(sequenceno + " " + station + " " + lat + " " + lng);
						}
					}
					System.out.println();
				}
			}
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
}