json 字符串类型两种转换
来源:互联网 发布:伊斯兰教 知乎 编辑:程序博客网 时间:2024/05/16 07:40
1.第一种json格式转换;需要导入jar包;
json-lib-2.4-jdk15.jar;
ezmorph-1.0.4.jar;
commons-logging-1.1.1.jar;
commons-lang-2.4.jar;
commons-collections-3.2.1.jar;
commons-beanutils-1.8.3.jar;String result="{"status":"0","msg":"ok", "result":{"number":"420032722706","type":"sfexpress", "list":[{"time":"2017-08-16 10:03:48","status":"在官网\"运单资料&签收图\",可查看签收人信息"},{"time":"2017-08-16 10:02:32","status":"已签收,感谢使用顺丰,期待再次为您服务"},{"time":"2017-08-16 08:06:16","status":"快件交给李刚刚,正在派送途中(联系电话:18926429835)"},{"time":"2017-08-16 07:48:47","status":"正在派送途中,请您准备签收(派件人:李刚刚,电话:18926429835)"},{"time":"2017-08-15 23:52:47","status":"快件到达 【深圳南山科技园南区营业点】"},{"time":"2017-08-15 22:41:02","status":"快件在【深圳黄田集散中心】已装车,准备发往 【深圳南山科技园南区营业点】"},{"time":"2017-08-15 22:18:33","status":"快件到达 【深圳黄田集散中心】"},{"time":"2017-08-15 19:00:40","status":"快件在【广州新塘集散中心】已装车,准备发往 【深圳黄田集散中心】"},{"time":"2017-08-15 18:37:32","status":"快件到达 【广州新塘集散中心】"},{"time":"2017-08-15 16:34:46","status":"快件在【广州萝岗南翔二路营业部】已装车,准备发往 【广州新塘集散中心】"},{"time":"2017-08-15 14:44:00","status":"顺丰速运 已收取快件"}], "deliverystatus":"3","issign":"1"}}"; /** * 这种json格式,是在接口类型中返回比较常见的; * status,msg,result是在同一级,而list又在result中,而且还是数组; * 通通都是分级来获取;最外层可以直接获取,而里面需要一层层剥 */JSONObject json = JSONObject.fromObject(result);//转化json格式 //最外一层json.getInt("status");//获取得是0,整型;json.getString("msg");//获取得是ok,字符型;//第二层JSONObject resultarr = (JSONObject) json.opt("result"); String type = resultarr.getString("type"); //第三层是数组 JSONArray list = resultarr.optJSONArray("list"); for (int j = 0; j < list.size(); j++) { JSONObject list_obj = (JSONObject) list.opt(j); if (list_obj != null) { String time = list_obj.getString("time"); String status = list_obj.getString("status"); System.out.println(time + " " + status); } }
2.第二种json格式转换
需要jarbao,gson-2.5.jar;
String result="{ "EBusinessID": "1300324", "ShipperCode": "SF", "Success": true, "LogisticCode": "236617947430", "State": "4", "Traces": [ { "AcceptTime": "2017-08-09 18:08:32", "AcceptStation": "【恒安路速运营业点】顺丰速运 已收取快件" }, { "AcceptTime": "2017-08-09 19:19:39", "AcceptStation": "【恒安路速运营业点】快件在【榆林榆阳恒安路速运营业点】已装车,准备发往 【榆林榆阳中转场】" }, { "AcceptTime": "2017-08-09 20:02:32", "AcceptStation": "【榆林榆阳中转场】快件到达 【榆林榆阳中转场】" }, { "AcceptTime": "2017-08-09 20:04:32", "AcceptStation": "【榆林榆阳中转场】快件在【榆林榆阳中转场】已装车,准备发往下一站" }, { "AcceptTime": "2017-08-10 08:12:02", "AcceptStation": "【西北陆运枢纽(西安)】快件到达 【西安陆运中转场】" }, { "AcceptTime": "2017-08-10 08:27:39", "AcceptStation": "【西北陆运枢纽(西安)】快件在【西安陆运中转场】已装车,准备发往 【西安总集散中心】" }, { "AcceptTime": "2017-08-10 14:32:13", "AcceptStation": "【西安咸阳航空站点】快件到达 【西安总集散中心】" }, { "AcceptTime": "2017-08-10 15:04:11", "AcceptStation": "【西安咸阳航空站点】快件在【西安总集散中心】已装车,准备发往 【广州白云集散中心】" }, { "AcceptTime": "2017-08-11 06:11:07", "AcceptStation": "【广州白云中转场】快件到达 【广州白云集散中心】" }, { "AcceptTime": "2017-08-11 06:11:07", "AcceptStation": "【广州白云中转场】快件在【广州白云集散中心】已装车,准备发往 【深圳黄田集散中心】" }, { "AcceptTime": "2017-08-11 09:53:25", "AcceptStation": "【深圳黄田中转场】快件到达 【深圳黄田集散中心】" }, { "AcceptTime": "2017-08-11 10:16:45", "AcceptStation": "【深圳黄田中转场】快件在【深圳黄田集散中心】已装车,准备发往 【深圳南山科技园南区营业点】" }, { "AcceptTime": "2017-08-11 13:19:56", "AcceptStation": "【科技园速运营业部】快件到达 【深圳南山科技园南区营业点】" }, { "AcceptTime": "2017-08-11 14:00:24", "AcceptStation": "【科技园速运营业部】快件交给邱良强,正在派送途中(联系电话:13728839748)" }, { "AcceptTime": "2017-08-11 17:01:16", "AcceptStation": "【科技园速运营业部】应客户要求,快件正在/已经退回" }, { "AcceptTime": "2017-08-11 17:43:36", "AcceptStation": "【科技园速运营业部】快件派送不成功(因电话无人接听/关机/无信号,暂无法联系到收方客户),正在处理中,待再次派送" }, { "AcceptTime": "2017-08-15 10:33:53", "AcceptStation": "【科技园速运营业部】快件交给邱良强,正在派送途中(联系电话:13728839748)" }, { "AcceptTime": "2017-08-15 11:40:52", "AcceptStation": "【深圳南山科技园南区营业点】已签收,感谢使用顺丰,期待再次为您服务" } ]}";JsonParser jp = new JsonParser();//创建json解析器;JsonObject object = (JsonObject) jp.parse(result); //转换成json格式;//获取第一层String Success = object.get("Success").getAsString();//获取第二层,数组JsonArray array = object.get("Traces").getAsJsonArray();//获取指定位置的信息,也可以遍历(在这个就不演示)JsonObject subObject = array.get(array.size() - 1).getAsJsonObject();String AcceptTime = subObject.get("AcceptTime").getAsString();String AcceptStation = subObject.get("AcceptStation").getAsString();
阅读全文
0 0
- json 字符串类型两种转换
- Json字符串转换Map类型
- 字符串转换成JSON的两种常用方法
- json格式的字符串转换成了JSON对象的两种方法(eval()和JSON.parse())
- js中如何将字符串转换成json类型
- Java类型转换成Json字符串的工具类小记
- Java类型转换成Json字符串的工具类小记
- 关于date类型的json字符串相互转换
- json转换时间类型的字符串为object-小心
- 将Date日期类型的字段转换成json字符串
- 树形结构转换为json类型的字符串
- 字符串类型的xml转换成json对象
- String类型的json体转换为json(json嵌套字符串json,嵌套字符串json数组等)转换并解析为需要的json格式
- java json 类型转换
- JSON类型转换
- json类型转换
- postgresql json 类型转换
- 转换字符串型的两种方法
- 单例模式的4种实现方式
- HDU 4902 NICE BOAT (线段树+懒标记)
- RecyclerView的基本用法
- java 实现proxool oracle数据库连接池的使用
- [HDU P6114]Chess
- json 字符串类型两种转换
- Ubuntu安装Python3.5
- 跟我学Kafka之NIO通信机制
- URLDecoder.decode之后加号变空格问题
- 大批量导入数据到mysql中
- python 生成器 generator
- sublime 全局跳转
- numpy模块的arang函数实例
- NYOJ又见01背包