zoukankan      html  css  js  c++  java
  • android 使用gson 处理Json

    Json是一种类似于XML的通用数据交换格式,比XML传输效率高.更利于网络传输数据。这里说一些使用Gosn类来处理json数据。Gson比传统的json处理方式更加快速,Gson开源的。如果有兴趣的也可以了解一下阿里开发的fastgson,速度也非常快。

    使用Gosn 处理json非常简单。第一我们首先创建一个JavaBean类

    (1)创建User.java

    public class User {
        public User(String name, int age) {
            this.name = name;
            this.age = age;
        }
    
        private String name;
        private int age;
    
        public String getName() {
            return name;
        }
    
        public void setName(String name) {
            this.name = name;
        }
    
        public int getAge() {
            return age;
        }
    
        public void setAge(int age) {
            this.age = age;
        }
    }
    View Code

    (2)解析如下json格式数据:

    String jsonData = "[{"name":"john","age":18},{"name":"Jason","age":16}]";
    
    //解析类型
    Type listType = new TypeToken<LinkedList<User>>(){}.getType(); 
    //创建Gson实例,Gson gson = new Gson();也行
    Gson gson = GsonFactory.getGsonInstance();
    //解析Json数据
    LinkedList<User> users = gson.fromJson(jsonData, listType); 
    //迭代输出
    for (Iterator iterator = users.iterator(); iterator.hasNext();) { 
    User user = (User) iterator.next(); 
    System.out.println(user.getName()); 
    System.out.println(user.getAge()); 
    }

    (3)把JavaBean利用Gson生成Json数据

     

     List<User> userList=new LinkedList<User>();
    User user1
    =new User ("张三",20); userList.add(user1);
    User user2
    =new User ("John",45); userList.add(user2);  //创建Gson实例 Gson gson=new Gson(); //生成Json格式数据  String jsonData=gson.toJson(userList) System.out.println(jsonData); //输出结果是: [{"name":"张三","age":20},{"name":"John","age":45}]

    这里主要用到Gson两个方法:

    1.解析json的方法 fromJson

    2.生成json的方法 toJson

  • 相关阅读:
    【Leetcode】92. Reverse Linked List II && 206. Reverse Linked List
    【Leetcode】91. Decode Ways
    记一次面经
    涨知识
    B-Tree 漫谈 (从二叉树到二叉搜索树到平衡树到红黑树到B树到B+树到B*树)
    涨知识
    HDU 1754 I Hate It 【线段树单点修改 维护区间最大值】
    POJ 1632 Vase collection【状态压缩+搜索】
    POJ 1011 Sticks 【DFS 剪枝】
    POJ 1088 滑雪 【记忆化搜索经典】
  • 原文地址:https://www.cnblogs.com/ywtk/p/3851421.html
Copyright © 2011-2022 走看看