分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 教程案例

json对象操作

发布时间:2023-09-06 01:27责任编辑:蔡小小关键词:jsjson

对json的基本操作

使用json-lib包对json对象进行解析,需要使用如下jar包:

 * 1.commons-beanutils-1.8.0.jar * 2.commons-collections-3.2.1.jar * 3.commons-lang-2.5.jar * 4.commons-logging-1.1.1.jar * 5.ezmorph-1.0.6.jar * 6.json-lib-2.4-jdk15.jar

json的格式如下:

 * { * ?????"key1" : value1, * ?????"key2" : value2 * } 

以上就是一个json数据,其中key是一个字符串,value是一个object对象,跟map很相像,相当于一个map

除了一个json以外,还有json数组,如下

 * [ * ?????{ * ?????????"key1" : value1, * ?????????"key2" : value2 ?* ?????}, * ?????{ * ?????????"key1" : value1, * ?????????"key2" : value2 * ?????} * ]

以上表示一个json数组,其中存放了两个json对象,相当于一个list

常用的json对象

  • JSONObject 是一个json对象
  • JSONArray 是一个json数组,但是里面未必放的是json对象,也可以放字符串等等,常用的方法按下alt + /键就可以查看,有集合都有的添加,删除,数据转换等

实现的功能:

 * ?1.1.把一个json字符串或者map集合转换为jsonobject ?* ?jsonobject json = JSONObject.fromObject(obejct); * ??* ?1.2.获取jsonobejct中的属性 ????* ?Object obj = jsonobject.get("key"); ?//获取key对应的值,还有getString("key"),getDouble("key")等 * ??????* ?1.3.添加jsonobject中的属性 ????* ?Object obj = jsonobject.put("key", object) //返回添加前该key值对应的value,如果不存在则返回null * ??* ?1.4.删除jsonobject中的属性 ????* ?Object obj = jsonobject.remove("key"); //返回被删除的值 * ??????* ?1.5.判断jsonobject中是否有某个属性 ??* ?Boolean flag = jsonobject.containsKey("key"); * ??????* ?1.6.把json对象转换成字符串 ????????* ?String str = jsonobject.toString(); * ??????* ?1.7.把json对象转换成map集合 ??????* ?Map map = (Map)JSONObject; ?//可以直接使用强制转换 * ??????* ?1.8.获取json中的属性个数 ?????* ?int size = jsonobejct.size(); * ?* ??????* ?2.1.把一个json数组转换为jsonarray ???* ?JSONArray array = JSONArray.fromObject(arrayStr/map); * ??????* ?2.2.获取jsonarray中的某个对象jsonobject ?????* ?jsonobject = array.get(index); * ??????* ?2.3.添加一个元素 ??* ?boolean flag = array.add(object); * ??????* ?2.4.删除一个元素 ??* ?booelan flag = array.remove(index); ?//也可以通过一个object匹配 * ??????* ?2.5.转换为字符串 ??* ?toString(); * ??????* ?2.6.遍历每一个元素 ???????* ?可以使用iterator遍历,与list一致,或者通过size()循环 * ??????* ?2.7.转换成list集合 ???* ?Object object = array.toArray(); ??* ?List list = Arrays.asList((Object []) object); * ??????* ?2.8.获取数组中的个数 ????* ?int size = array.size(); * ??????* 

获取如下json的lastName属性:

 * ?????{ * ?????????"name": * ?????????????{ * ?????????????????"firstName" : "json", * ?????????????????"lastName" ?: "dad" * ?????????????}, * ?* ?????????"age":24 * ?????} * ??????* ?????json.getJson("name").getString("lastName"); * ??????*

json对象操作

原文地址:http://www.cnblogs.com/jinxiuze/p/7896065.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved