json解析的几种方法总结

public static AsyncHttpClient client = new AsyncHttpClient();

private void getRWDDBoListByRestHttp(String url) {

Log.d("Zskll", " getRWDDBoListByRestHttp()");
client.get(url, new AsyncHttpResponseHandler() {
@Override
public void onSuccess(int arg0, Header[] arg1, byte[] arg2) {
String sendString;
Gson gson = new Gson();
try {
sendString = new String(arg2, "UTF-8");
// 方法一:
HashMap<String, Object> map1 = gson.fromJson(sendString,
new TypeToken<HashMap<String, Object>>() {
}.getType());
ArrayList<ZskxxBo> zsk = new ArrayList<ZskxxBo>();
zsk = (ArrayList<ZskxxBo>) map1.get("zskxxBoList");
// 法二
Map<String, JSONArray> jsonarray = JSONObject
.fromObject(sendString);
JSONArray ja = jsonarray.get("zsklbBoList");
List<ZsklbBo> list1 = JSONArray.toList(ja, ZsklbBo.class);
// 法三
HashMap<String, JsonArray> map = gson.fromJson(sendString,
new TypeToken<HashMap<String, JsonArray>>() {
}.getType());
Log.d("ProZSKLB---", map.get("zsklbBoList") + "");
Log.d("ProZSKXX---", map.get("zskxxBoList") + "");
ArrayList<ZsklbBo> zsk = new ArrayList<ZsklbBo>();
ArrayList<ZskxxBo> zskxx = new ArrayList<ZskxxBo>();
zsk = gson.fromJson(map.get("zsklbBoList") + "",
new TypeToken<ArrayList<ZsklbBo>>() {
}.getType());
zskxx = gson.fromJson(map.get("zskxxBoList") + "",
new TypeToken<ArrayList<ZskxxBo>>() {
}.getType());
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
}
@Override
public void onFailure(int arg0, Header[] arg1, byte[] arg2,
Throwable arg3) {
}
});
}


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值