JSON數據的生成與解析,首先先到網上下載一個json jar包,我用的是org.json
示例代碼:
package json;
import org.json.JSONArray;
import org.json.JSONObject;
public class Main {
/**
* 生成Json數據
*/
public static String createJson(){
JSONObject json = new JSONObject();
json.put("classId", 1); //班級
json.put("grade", 1); //年級
JSONArray array = new JSONArray();
JSONObject o1 = new JSONObject(); //第一個學生
o1.put("id", "101");
o1.put("name", "zhangsan");
array.put(o1);
JSONObject o2 = new JSONObject();
o2.put("id", "102");
o2.put("name", "lisi");
o2.put("score", 100);
array.put(o2);
json.put("student", array);
return json.toString();
}
public static void main(String[] args) {
//輸出生成的JSON數據
String s = createJson();
System.out.println(s);
//解析JSON數據
System.out.println("解析JSON數據:");
JSONObject obj = new JSONObject(s); //根據json文本生成JSONObject
int classId = obj.getInt("classId");
int grade = obj.getInt("grade");
JSONArray array = (JSONArray) obj.get("student");
for(int t=0; t<array.length(); ++t){
JSONObject o = (JSONObject)array.get(t);
String id = o.getString("id");
String name = o.getString("name");
//int score = o.getInt("score"); //因爲有一個數據沒有,找不到的話會拋出異常
System.out.println(id+" "+name);//+" "+score);
}
}
}
運行結果: