参考文献:

http://blog.csdn.net/huangwuyi/article/details/5412500

1.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

2.JSONObject对象使用

JSON-lib包是一个beans,collections,maps,java arrays 和XML和JSON互相转换的包。在本例中,我们将使用JSONObject类创建JSONObject对象,然后我们打印这些对象的值。为了使用JSONObject对象,我们要引入"net.sf.json"包。为了给对象添加元素,我们要使用put()方法。

2.1.实例1

package jsontest;

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", "huangwuyi");        jsonObject.put("sex", "男");        jsonObject.put("QQ", "413425430");        jsonObject.put("Min.score", new Integer(99));        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 + ", 是否为空:" + 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==>huangwuyiqq=413425430

2.2.实例2.

package jsontest;

import net.sf.json.JSONArray;import net.sf.json.JSONObject;

public class JSONTest {    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"}]}

转载于:https://www.cnblogs.com/sharpest/p/5563032.html

1.JSONObject与JSONArray的使用相关推荐

  1. JSONObject 和 JSONArray 获取value 的方法

    JSONObject 和 JSONArray 获取value 值 主要是根据key 值来获取的,使用方法是get() 或者getJSONObject 方法很简单 下面列举几个例子,大家可以参考下代码 ...

  2. android 读取json数据(遍历JSONObject和JSONArray)

    android 读取json数据(遍历JSONObject和JSONArray) public String getJson(){ String jsonString = "{\" ...

  3. Json-lib使用——JSONObject与JSONArray

    1.从Object到String  要先用Object对象构造一个JSONObject或者JSONArray对象,然后调用它的toString()方法即可 (1)示例一 1 Book book=new ...

  4. Java学习笔记50:JSONObject与JSONArray的使用

    Java不像PHP解析和生产JSON总是一个比较痛苦的过程.但是使用JSONObject和JSONArray会让整个过程相对舒服一些. 需要依赖的包:commons-lang.jar commons- ...

  5. fastjson 判断是否包含_Fastjson, Gson, org.json.JSON三者对于JSONObject及JSONArray的判断

    1.Fastjson 我们通常在已知格式的情况下直接使用JSONObject,JSONArray,但是如果遇到需要判断格式呢? try{ Object object=JSON.parse(a);if ...

  6. Json格式的解析,JsonObject、JSONArray

    1.将json字符串转成json格式 com.alibaba.fastjson.JSONObject object = JSONArray.parseObject(newJson); 2.根据属性获取 ...

  7. JSONObject 与 JSONArray

    转载网址:https://blog.csdn.net/changhenshui1990/article/details/69950663 https://www.cnblogs.com/liduanw ...

  8. JSON解析之JSONObject与JSONArray的使用

    一.应用场景 1.后台的java类,如实体类.List.Set.Map转成json字符串发送到前端或其他项目 2.前端或者其它项目发送过来的json字符串,需要解析成实体类.List.Set.Map等 ...

  9. JSON的三种解析方式以及JSONObject、JSONArray区别

    JSON的常用两种解析方式 一.什么是JSON? JSON是一种取代XML的数据结构,和xml相比,它更小巧但描述能力却不差,由于它的小巧所以网络传输数据将减少更多流量从而加快速度. JSON就是一串 ...

最新文章

  1. 让Visual Studio 也支持JS代码折叠 [ Visual Studio | #region | #endregion ]
  2. 面向对象三大特性之一:继承(C++)
  3. 九十八、轻松搞定Python中的Markdown系列
  4. 如何配置mysql8.0_安装和配置Mysql8.0
  5. Java与汽车_Java NIO:IO与NIO的区别
  6. rmmod: can't change directory to '/lib/modules': No such file or directory问题解决
  7. finalize方法作用
  8. mysql 时间 sql_MySQL sql语句获取当前日期|时间|时间戳
  9. linux自动重启电脑脚本,linux下通过脚本实现自动重启程序的方法
  10. python场景识别_python 场景
  11. (转)C++中extern “C”含义深层探索
  12. copy 和 deepcopy的区别
  13. heidisql 命令保存blob_git常用命令总结
  14. 【图像隐写】基于matlab GUI DWT与SVD数字水印 【含Matlab源码 253期】
  15. (一)appium-desktop定位元素原理
  16. 批量网刻操作系统(使用GHOST工具)
  17. 天刀论剑显示服务器,《天涯明月刀ol》服务器维护公告 天下镖和论剑优化
  18. 电梯监控系统的服务器,电梯安全远程监控系统方案整理
  19. CHAPTER 11 Syntactic Parsing
  20. 查看文章影响因子的插件_你的pubmed又不能显示影响因子了,因为 ……

热门文章

  1. cmake 注意事项
  2. win10安装spacemacs
  3. ASP.NET重用代码技术 - 代码绑定技术
  4. 内存检测工具Dr. Memory的使用
  5. [Go]在vscode中添加对模板文件tmpl的html语法自动补全的支持
  6. bat curl 返回值_bat curl 发送http请求 监控网站
  7. php修改时区MST,4、修改Cacti绘图的时间精度
  8. vb6调用python识别训练例子_在vb6中创建的“标准”dll在python中调用时会出现访问冲突...
  9. 打印机扫描后旋转纸张_档案扫描好帮手,富士通ix1500无线双面高速扫描仪评测...
  10. Java项目:实现个人博客系统(java+springboot+mybatis+redis+vue+elementui+Mysql)