JAVA中解析JSON物件裡包含的JSON陣列
例如現在有這樣一個Json
String Value={"data":[{"school_name":"西北農林科技大學","school_id":"8"},{"school_name":"西北大學","school_id":"6"},{"school_name":"西北工業大學","school_id":"5"},{"school_name":"西北政法大學","school_id":"2"},{"school_name":"西安交通大學","school_id":"4"},{"school_name":"西安建築科技大學","school_id":"10"},{"school_name":"西安電子科技大學","school_id":"3"},{"school_name":"西安郵電大學","school_id":"1"},{"school_name":"長安大學","school_id":"9"},{"school_name":"陝西師範大學","school_id":"7"},{"school_name":"陝西科技大學","school_id":"11"}],"msg":"列表獲取成功","status":0}
用2個數組接收school_name和school_id
首先
public String[] schoolID;
public String[] schoolName;
JSONObject jsonObj_school;//用來接收解析的JSON字串
JSONArray jsonArr_school ;//用來接收JSON物件裡的陣列
try{
jsonObj_school = new JSONObject ( Value ); //解析 JSON字串
jsonArr_school =jsonObj_school.getJSONArray("data");// 接收JSON物件裡的陣列
int jsonSize_school = jsonArr_school.length();.//獲取陣列長度
schoolID = new String[ jsonSize_school ];//初始化陣列
schoolName = new String[ jsonSize_school]; //初始化陣列
for(int i = 0; i < jsonSize_school; i++ )//通過迴圈取出數組裡的值
{
JSONObject jsonTemp = (JSONObject)jsonArr_school.getJSONObject(i);
schoolID[i] = jsonTemp.getString("school_id");
schoolName[i] = jsonTemp.getString("school_name");
}
}catch(Exception e){
e.printStackTrace();
}