zoukankan      html  css  js  c++  java
  • json 及json数据解析

    1、json数字

    { "age":30 }

    2、json对象

    { "name":"快递6666" , "url":"www.kuidi6666.com" }

    3、json数组

    { "sites": [ { "name":"学习java" , "url":"www.xuexi.com" }, { "name":"google" , "url":"www.xiaoyou.com" }, { "name":"微博" , "url":"www.weibo.com" } ] }

    4、json解析(orderController)

    String s = "{\"error\":0,\"status\":\"success\",\"results\":[{\"currentCity\":\"青岛\",\"index\":[{\"title\":\"穿衣\",\"zs\":\"较冷\",\"tipt\":\"穿衣指数\",\"des\":\"建议着厚外套加毛衣等服装。年老体弱者宜着大衣、呢外套加羊毛衫。\"},{\"title\":\"紫外线强度\",\"zs\":\"最弱\",\"tipt\":\"紫外线强度指数\",\"des\":\"属弱紫外线辐射天气,无需特别防护。若长期在户外,建议涂擦SPF在8-12之间的防晒护肤品。。\"}],}]}";

    JSONObject jsonObject = JSONObject.fromObject(s); //提取出error为 0

    int error = jsonObject.getInt("error");

    System.out.println("error:" + error);

    //提取出status为 success

    String status = jsonObject.getString("status");

    System.out.println("status:" + status);

    //注意:results中的内容带有中括号[],所以要转化为JSONArray类型的对象

    JSONArray result = jsonObject.getJSONArray("results");

    for (int i = 0; i < result.size(); i++) {

    //提取出currentCity为 青岛

    String currentCity = result.getJSONObject(i).getString("currentCity");

    System.out.println("currentCity:" + currentCity);

    //注意:index中的内容带有中括号[],所以要转化为JSONArray类型的对象

    JSONArray index = result.getJSONObject(i).getJSONArray("index");

    for (int j = 0; j < index.size(); j++) {

    String title = index.getJSONObject(j).getString("title");

    System.out.println("title:" + title);

    }

    }

    通过以上步骤即可完成json多层嵌套的解析!!

    5、将json转换成List集合:

    String strByJson = "[{"ftime":"2017-11-15 22:03:32","context":"客户 签收人: 牛春平 已签收  感谢使用圆通速递,期待再次为您服务","time":"2017-11-15 22:03:32"},{"ftime":"2017-11-15 16:28:38","context":"北京市昌平区北七家公司(点击查询电话)居** 派件中 派件员电话15501296544","time":"2017-11-15 16:28:38"},{"ftime":"2017-11-15 05:52:22","context":"北京市昌平区北七家公司 已收入","time":"2017-11-15 05:52:22"},{"ftime":"2017-11-15 01:36:57","context":"北京转运中心 已发出,下一站 北京市昌平区北七家","time":"2017-11-15 01:36:57"},{"ftime":"2017-11-15 01:31:19","context":"北京转运中心 已收入","time":"2017-11-15 01:31:19"}]";
    // Gson to list
    ExpressStatusVO[] array = new Gson().fromJson(strByJson, ExpressStatusVO[].class);
    List<ExpressStatusVO> list= Arrays.asList(array);

    获取的list集合为:

     

  • 相关阅读:
    template(name="remote" type="string" string="%msg%")
    legacy 发送和接收格式
    保存退出vi编辑以及CentOS 系统安装配置步骤详解
    Templates 模板:
    [Err] 1449
    select2如何设置默认空值
    select2切换事件如何生效
    Basic Structure 基本结构:
    FineBI与FineReport对比
    geoip设置
  • 原文地址:https://www.cnblogs.com/qqzhulu/p/10336162.html
Copyright © 2011-2022 走看看