• android JSON 数据解析


    创建JSON数据:

    public class CreateJson {
        public static Object createJson(){
            // 首先最外层是{},是创建一个对象
            JSONObject jsonObject = new JSONObject();
            // 第一个键contact的值是数组,所以需要创建数组对象
            JSONArray contactArray = new JSONArray();
            try {
                for (int i=0;i<9;i++) {
                    // contact数组里有9个object,所以要创建对象
                    JSONObject contactJsonObject = new JSONObject();
                    contactJsonObject.put("name", "张三"+i);
                    contactJsonObject.put("phone", "1785352000"+i);
                    contactArray.put(contactJsonObject);
                }
                jsonObject.put("contact",contactArray);
                return jsonObject;
            } catch (JSONException e) {
                e.printStackTrace();
                return null;
            }
        }
    }
    

     解析JSON数据:

    private void readJson(){
            jsonString = CreateJson.createJson().toString();
            try {
                JSONObject jsonObject = new JSONObject(jsonString);
                contact = jsonObject.getJSONArray("contact");
                for (int i=0;i<contact.length();i++){
                    JSONObject contactObject = contact.getJSONObject(i);
                    String name = contactObject.getString("name");
                    String phone = contactObject.getString("phone");
                    names.add(name);
                    phones.add(phone);
                }
            } catch (JSONException e) {
                e.printStackTrace();
            }
        }
    

    JSON数据:

    {
      "contact": [
        {
          "name": "张三0",
          "phone": "17853520000"
        },
        {
          "name": "张三1",
          "phone": "17853520001"
        },
        {
          "name": "张三2",
          "phone": "17853520002"
        },
        {
          "name": "张三3",
          "phone": "17853520003"
        },
        {
          "name": "张三4",
          "phone": "17853520004"
        },
        {
          "name": "张三5",
          "phone": "17853520005"
        },
        {
          "name": "张三6",
          "phone": "17853520006"
        },
        {
          "name": "张三7",
          "phone": "17853520007"
        },
        {
          "name": "张三8",
          "phone": "17853520008"
        }
      ],
      "fff": {
        "name": 1,
        "phone": "17853520000"
      }
    }
    

     json数据格式:

     JSON数据: 一对 {}代表一个JSONObject,第一个大括号用new JSONObject( String Json ) 得到一个jsonObject,一对[ ] 代表JSONArray. 解析JSONObject用jsonobject.getJSONObject( String key )方法,解析JSONArray调用jsonobject.getJsonArray(String key);

    此后解析方法基本一样.

  • 相关阅读:
    Dockerfile编写语法
    java应用测试报告生成(二):利用ant的build.xml生成测试报告
    java应用测试报告生成(一): sonarqube配合Jenkins生成测试报告及覆盖率
    cannot create windows service for mysql
    线程交互:生产消费模型
    线程同步与锁
    线程的五种状态及改变状态的三种方法
    简单的git入门介绍及常用操作
    CentOS/RHEL 7中的firewall控制
    oracle数据库兼容mysql的差异写法
  • 原文地址:https://www.cnblogs.com/IT-lss/p/5702339.html
Copyright © 2020-2023  润新知