首页 > 代码库 > android 使用gson 处理Json

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 = "http://www.mamicode.com/[{/"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