1. 程式人生 > >android 詳細解答json解析與生成 JSONObject JSONArray

android 詳細解答json解析與生成 JSONObject JSONArray

android 詳細解答json解析與生成  JSONObject JSONArray

加上http://blog.csdn.net/menglele1314/article/category/5921693裡的json生成,解析,可以應付一般所以的開發了

try {// 生成json資料
	List<String> list = new ArrayList<String>();
	list.add("aaa");
	list.add("bbb");
	list.add("ccc");
	JSONObject jo = new JSONObject();
	jo.put("name", "test");
	JSONArray ja = new JSONArray();
	for (String s : list) {
		ja.put(s);
	}
	jo.put("lists", ja);
	// {"lists":["aaa","bbb","ccc"],"name":"test"}
	i("BaseActivity", jo.toString());
	// ["aaa","bbb","ccc"]
	i("BaseActivity", ja.toString());
} catch (JSONException e) {
	e.printStackTrace();
}

try {
	// 解析json資料
	String json = "{\"result\":\"Y\", \"address\":[{\"shengfen\":\"上海\"},{\"shengfen\":\"北京\"},{\"shengfen\":\"深圳\"}]}";
	JSONObject jsonObject = new JSONObject(json);
	String result = jsonObject.getString("result");
	// Y
	i("BaseActivity", result);
	JSONArray array = jsonObject.getJSONArray("address");
	if (null != array && array.length() != 0) {
		for (int i = 0; i < array.length(); i++) {
			JSONObject jo1 = array.getJSONObject(i);
			String sf = jo1.getString("shengfen");
			// 上海
			// 北京
			// 深圳
			i("BaseActivity", sf);
		}
	}
} catch (JSONException e) {
	e.printStackTrace();
}