JSONObject与JSONArray的使用方法
一、JAR包简介
要使程序可以运行必须引入JSON-lib包,JSON-lib包同时依赖于以下的JAR包:
1.commons-lang.jar
2.commons-beanutils.jar
3.commons-collections.jar
4.commons-logging.jar
5.ezmorph.jar
6.json-lib-2.2.2-jdk15.jar
二、JSONObject对象使用
JSON-lib包是一个beans,collections,maps,java arrays 和XML和JSON互相转换的包。在本例中,我们将使用JSONObject类创建JSONObject对象,然后我们打印这些对象的值。为了使用JSONObject对象,我们要引入"net.sf.json"包。为了给对象添加元素,我们要使用put()方法。
package com.tjcyjd; import net.sf.json.JSONArray; import net.sf.json.JSONObject; public class JSONObjectSample { // 创建JSONObject对象 private static JSONObject createJSONObject() { JSONObject jsonObject = new JSONObject(); jsonObject.put("username","yangjinde"); jsonObject.put("sex","男"); jsonObject.put("QQ","908599713"); jsonObject.put("yjd.score",new Integer(100)); jsonObject.put("nickname","搁浅"); return jsonObject; } public static void main(String[] args) { JSONObject jsonObject = JSONObjectSample.createJSONObject(); // 输出jsonobject对象 System.out.println("jsonObject:" + jsonObject); // 判读输出对象的类型 boolean isArray = jsonObject.isArray(); boolean isEmpty = jsonObject.isEmpty(); boolean isNullObject = jsonObject.isNullObject(); System.out.println("isArray:" + isArray + " isEmpty:" + 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,"this is another jsonArray value"); // 往JSONObject添加JSONArray jsonObject.element("jsonArray",jsonArray); JSONArray array = jsonObject.getJSONArray("jsonArray"); System.out.println("array:" + array); System.out.println("添加JSONArray后的对象:" + jsonObject); // 根据key返回一个字符串 String username = jsonObject.getString("username"); System.out.println("username:" + username); // 把字符转换为 JSONObject String temp = jsonObject.toString(); System.out.println("要转换为JSONObject的字符串为:" + temp); JSONObject object = JSONObject.fromObject(temp); // 转换后根据Key返回值 System.out.println("qq:" + object.get("QQ")); } }
运行的结果如下:
jsonObject:{"username":"yangjinde","sex":"男","QQ":"908599713","yjd.score":100,"nickname":"搁浅"} isArray:false isEmpty:false isNullObject:false 添加属性后的对象:{"username":"yangjinde","nickname":"搁浅","address":"北京中关村"} array:["this is a jsonArray value","this is another jsonArray value"] 添加JSONArray后的对象:{"username":"yangjinde","address":"北京中关村","jsonArray":["this is a jsonArray value","this is another jsonArray value"]} username:yangjinde 要转换为JSONObject的字符串为:{"username":"yangjinde","this is another jsonArray value"]} qq:908599713