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

    json解析的几种方法(将字符串解析为object对象和objectArray对象数组)

    1 Android自带api  包名 org.json

    //    json = {"school":"江夏一中","classList":[
    //    {"title":"一年级","number":100},
    //    {"title":"二年级","number":200},
    //    {"title":"三年级","number":300},};
        private void getJsonObject(String json){
            try {
                //将字符串json解析为object对象
                JSONObject jsonObject = new JSONObject(json);
                //将object对象里面的name属性解析为对象数组
                JSONArray jsonArray = jsonObject.getJSONArray("classList");
                //将jsonArray对象数组循环取值
                for (int i = 0; i < jsonArray.length(); i++) {
                    JSONObject obj = new JSONObject(jsonArray.getString(i));
                    String title = obj.getString("title");
                    int number = obj.getInt("number");
                }
            } catch (JSONException e) {
                e.printStackTrace();
            }
            
        }

     2 FastJson  包名 : com.alibaba.fastjson.JSON

       阿里巴巴FastJson是一个Json处理工具包,包括“序列化”和“反序列化”两部分

          它具备如下特征:速度最快,测试表明,fastjson具有极快的性能,超越任其他的Java Json parser

    public static final Object parse(String text); // 把JSON文本parse为JSONObject或者JSONArray 
    public static final JSONObject parseObject(String text); // 把JSON文本parse成JSONObject    
    public static final  T parseObject(String text, Class clazz); // 把JSON文本parse为JavaBean 
    public static final JSONArray parseArray(String text); // 把JSON文本parse成JSONArray 
    public static final  List parseArray(String text, Class clazz); //把JSON文本parse成JavaBean集合 
    public static final String toJSONString(Object object); // 将JavaBean序列化为JSON文本 
    public static final String toJSONString(Object object, boolean prettyFormat); // 将JavaBean序列化为带格式的JSON文本 
    public static final Object toJSON(Object javaObject); // 将JavaBean序列化JSONObject或者JSONArray 

    3 Google Gson 包名:com.google.gson.Gson

        private void testGson(String json){
            Gson gson = new Gson();
            Student student = gson.fromJson(json, Student.class);
        }
    
    
    
  • 相关阅读:
    Boost中timer的简易用法
    poj 2586 Y2K Accounting Bug(贪心算法,水题一枚)
    Steps to Install Hadoop on CentOS/RHEL 6---reference
    nginx多进程模型之配置热加载---转
    C/C++ unit testing tools (39 found)---reference
    centos复制到另外一台电脑连不上网
    linux man使用方法 和centos安装中文man包 --转
    centos6.4使用man查找命令时,报错No manual entry for xxxx
    How to Install and Configure Nginx from Source on centos--转
    研磨设计模式之 策略模式--转
  • 原文地址:https://www.cnblogs.com/suiyilaile/p/5232044.html
Copyright © 2011-2022 走看看