JsonArayとJsonObjectの使用
5661 ワード
この二つのJSONオブジェクトの違いはずっとよく分かりません。まずは良いJson入門の文書を紹介します。
http://www.json.org/json-zh.html
次はネットで見つけたイメージのいい例です。地元で走り始めます。
http://www.json.org/json-zh.html
次はネットで見つけたイメージのいい例です。地元で走り始めます。
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
public class JsonTest {
public static void main(String[] args) {
JSONObject jsonObject = new JSONObject();
jsonObject.put("username", "huangwuyi");
jsonObject.put("sex", " ");
jsonObject.put("QQ", "413425430");
jsonObject.put("Min.score", new Integer(99));
jsonObject.put("nickname", " ");
// jsonobject
System.out.println("=====jsonObject:" + jsonObject);
//
boolean isArray = jsonObject.isArray();
boolean isEmpty = jsonObject.isEmpty();
boolean isNullObject = jsonObject.isNullObject();
System.out.println("===== :" + isArray + ", :" + isEmpty
+ ", isNullObject:" + isNullObject);
// , jsonObject 。
jsonObject.element("address", " ");
System.out.println("===== :" + jsonObject);
// JSONArray
JSONArray jsonArray = new JSONArray();
jsonArray.add(0, "this is a jsonArray value");
jsonArray.add(1, "another jsonArray value");
jsonObject.element("jsonArray", jsonArray);
// jsonObject jsonArray
JSONArray array = jsonObject.getJSONArray("jsonArray");
System.out.println(jsonObject);
System.out.println("===== JSONArray :" + array);
// JSONArray
// {"username":"huangwuyi","sex":" ","QQ":"413425430","Min.score":99,"nickname":" ","address":" ","jsonArray":["this is a jsonArray value","another jsonArray value"]}
System.out.println("===== :" + jsonObject);
// key
String username = jsonObject.getString("username");
System.out.println("=====username:" + username);
// JSONObject
String temp = jsonObject.toString();
JSONObject object = JSONObject.fromObject(temp);
// Key
System.out.println("=====qq:" + object.get("QQ"));
}
}
から出力された結果は、=====jsonObject:{"username":"huangwuyi","sex":" ","QQ":"413425430","Min.score":99,"nickname":" "}
===== :false, :false, isNullObject:false
===== :{"username":"huangwuyi","sex":" ","QQ":"413425430","Min.score":99,"nickname":" ","address":" "}
{"username":"huangwuyi","sex":" ","QQ":"413425430","Min.score":99,"nickname":" ","address":" ","jsonArray":["this is a jsonArray value","another jsonArray value"]}
===== JSONArray :["this is a jsonArray value","another jsonArray value"]
===== :{"username":"huangwuyi","sex":" ","QQ":"413425430","Min.score":99,"nickname":" ","address":" ","jsonArray":["this is a jsonArray value","another jsonArray value"]}
=====username:huangwuyi
=====qq:413425430
は次の例です。import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
public class JsonObjectTest {
/**
* @param args
*/
public static void main(String[] args) {
JSONObject jsonObj0 = new JSONObject();
JSONObject jsonObj = new JSONObject();
JSONObject jsonObj2 = new JSONObject();
JSONObject jsonObj3 = new JSONObject();
JSONArray jsonArray = new JSONArray();
// jsonObj0
jsonObj0.put("name0", "zhangsan");
jsonObj0.put("sex1", "female");
System.out.println("jsonObj0:" + jsonObj0);
// jsonObj1
jsonObj.put("name", "xuwei");
jsonObj.put("sex", "male");
System.out.println("jsonObj:" + jsonObj);
// jsonObj2, , jsonObj0,jsonObj1
jsonObj2.put("item0", jsonObj0);
jsonObj2.put("item1", jsonObj);
System.out.println("jsonObj2:" + jsonObj2);
// jsonObj3, , jsonObj2
jsonObj3.element("j3", jsonObj2);
System.out.println("jsonObj3:" + jsonObj3);
// JSONArray JSONObject 。 JSONArray JSONObject JSONArray JSONObject []
jsonArray.add(jsonObj);
System.out.println("jsonArray:" + jsonArray);
JSONObject jsonObj4 = new JSONObject();
jsonObj4.element("weather", jsonArray);
System.out.println("jsonObj4:" + jsonObj4);
}
}
これは運転の結果です。jsonObj0:{"name0":"zhangsan","sex1":"female"}
jsonObj:{"name":"xuwei","sex":"male"}
jsonObj2:{"item0":{"name0":"zhangsan","sex1":"female"},"item1":{"name":"xuwei","sex":"male"}}
jsonObj3:{"j3":{"item0":{"name0":"zhangsan","sex1":"female"},"item1":{"name":"xuwei","sex":"male"}}}
jsonArray:[{"name":"xuwei","sex":"male"}]
jsonObj4:{"weather":[{"name":"xuwei","sex":"male"}]}
まとめてみます。JsonArayの対象の中には、括弧があり、addとelementの2つのset方法があり、optとgetの2つのget方法があります。JsonObjectはkeyvalueという形で存在します。putとelementの2つのset方法があります。optとgetの2つのget方法があります。