zoukankan      html  css  js  c++  java
  • json 的解析使用Android中的JSONObject和JSONArray解析json数据,gson中的JsonReader解析json数据

    关于Json:http://www.json.org/

    Json解析库gson: http://code.google.com/p/google-gson/

    1.使用Android中的JSONObject和JSONArray解析json数据

     
            String strJson = "{\"students\":[{\"name\":\"Jack\",\"age\":12}, {\"name\":\"Vista\",\"age\":23}, {\"name\":\"Kaka\",\"age\":22}, {\"name\":\"Hony\",\"age\":31}]}";
    try {
    JSONObject jo = new JSONObject(strJson);
    JSONArray jsonArray = (JSONArray) jo.get("students");
    for (int i = 0; i < jsonArray.length(); ++i) {
    JSONObject o = (JSONObject) jsonArray.get(i);
    System.out.println("name:" + o.getString("name") + "," + "age:"
    + o.getInt("age"));
    }
    } catch (JSONException e) {
    e.printStackTrace();
    }
     

    2.使用gson中的JsonReader解析json数据

     
    try {
    String string = "{\"class\":1, \"students\":[{\"name\":\"jack\", \"age\":21},{\"name\":\"kaka\", \"age\":21},{\"name\":\"lucy\", \"age\":21}]}";
    StringReader sr = new StringReader(string);
    JsonReader jr = new JsonReader(sr);
    jr.beginObject();
    if (jr.nextName().equals("class")) {
    System.out.println("班级: " + jr.nextString());
    if (jr.nextName().equals("students")) {
    jr.beginArray();
    while (jr.hasNext()) {
    jr.beginObject();
    if (jr.nextName().equals("name"))
    System.out.print("姓名:" + jr.nextString());
    if (jr.nextName().equals("age")) {
    System.out.println(" , 年龄:" + jr.nextInt());
    }
    jr.endObject();
    }
    jr.endArray();
    }
    }
    jr.endObject();
    } catch (FileNotFoundException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    } catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }
     
  • 相关阅读:
    ios 读取通讯录
    隐藏多余的分割线
    Cell高亮时设置cell内容
    iOS录音
    iOS发送信息功能(生成信息内容)
    iOS颜色选择器
    iOS缓存
    二维码扫描
    梵讯笔记
    微信开发后台库
  • 原文地址:https://www.cnblogs.com/mfryf/p/3130317.html
Copyright © 2011-2022 走看看