最近項目需要用到原生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(); } }