json解析的几种方法总结

来源:互联网 发布:淘宝有卖鳄鱼的吗 编辑:程序博客网 时间:2024/06/04 18:20

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) {
}
});
}


0 0