以麦当劳,肯德基优惠券接口数据为例进行的数据解析方法,简单易懂,这是我个人觉得是一种比较简单易懂的json数据解析方法:
看下其中一个类的代码
package com.example.text_json_deno_model; import java.util.ArrayList; import java.util.List; import org.json.JSONArray; import org.json.JSONException; import org.json.JSONObject; public class Coupons { private List<Kfc> coupons ; private String end; private int id; private String label; private String start; public List<Kfc> getCoupons() { return coupons; } public void setCoupons(List<Kfc> coupons) { this.coupons = coupons; } public String getEnd() { return end; } public void setEnd(String end) { this.end = end; } public int getId() { return id; } public void setId(int id) { this.id = id; } public String getLabel() { return label; } public void setLabel(String label) { this.label = label; } public String getStart() { return start; } public void setStart(String start) { this.start = start; } public Coupons(JSONObject jsonObject) throws JSONException{ constructJson(jsonObject); } private void constructJson(JSONObject jsonObject) throws JSONException { if (!jsonObject.isNull("end")) { end =jsonObject.getString("end"); } if (!jsonObject.isNull("id")) { id =jsonObject.getInt("id"); } if (!jsonObject.isNull("label")) { label =jsonObject.getString("label"); } if (!jsonObject.isNull("start")) { start =jsonObject.getString("start"); } if (!jsonObject.isNull("coupons")) { List<Kfc> kfcs =new ArrayList<Kfc>(); JSONArray object =jsonObject.getJSONArray("coupons"); if (object instanceof JSONArray) { for (int i = 0; i < object.length(); i++) { Kfc kfc =new Kfc(object.getJSONObject(i)); kfcs.add(kfc); } coupons =kfcs; } } } }
这样在解析数据的时候自己解析成一个对象就可以了,很简单吧。我把我写的一个Demo传了上来,下载地址:http://download.csdn.net/detail/u012808234/8385311
时间: 2024-10-20 17:16:10