最近项目需要用到原生json解析所以就在这做下记录,方便以后使用。
解析对象是:
{"success":true,"byTime":true,"deviceTimes":[{"startTime":"2018-08-16T07:00:00","endTime":"2018-08-16T09:00:00"},{"startTime":"2018-08-16T11:30:00","endTime":"2018-08-16T13:30:00"},{"startTime":"2018-08-16T18:00:00","endTime":"2018-08-16T21:00:00"}]}
首先创建一个对象
class PeakParameter { String startTime; String endTime; }
下面是解析方法:
//jsonString 要解析的字符串数据
public void jsonToObj(String jsonString) { try { JSONObject json = new JSONObject(jsonString); if (json.getBoolean("byTime")) { JSONArray deviceTimes = json.getJSONArray("deviceTimes"); for (int i = 0; i < deviceTimes.length(); i++) { PeakParameter deviceTime = new PeakParameter(); deviceTime.startTime = deviceTimes.getJSONObject(i).getString("startTime").replace("T", " "); deviceTime.endTime = deviceTimes.getJSONObject(i).getString("endTime").replace("T", " "); //deviceTime.startTime是起始时间,deviceTime.endTime 结束时间 } } } catch (JSONException e) { e.printStackTrace(); } }