android Gson的使用
来源:互联网 发布:流行源码 编辑:程序博客网 时间:2024/05/29 03:24
相对于较为传统的Json解析来说,google共享的开源Gson在解析速度和所使用的内存在有着明显的优势,虽然说阿里巴巴也提供了fastgson包,但是它跟Gson的处理速度大同小异,只是底层实现的原理不同,在这里就来学习一下怎么使用google的开源包Gson(在学习之间你应该下载好google gson包)
Gson的解析非常简单,但是它的解析规则是必须有一个bean文件,这个bean文件的内容跟JSon数据类型是一一对应的
public class user {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;
}
public user(String name, int age) {
super();
this.name = name;
this.age = age;
}
Gson有两个重要的方法,一个就是tojson,一个就是fromjson。
tojson就是将bean里面的内容转换为json内容
user u=new user("zhangsan",19);
Gson g=new Gson();
System.out.println(g.toJson(l));
//打印结果是{"name":"zhangsan","age":19}
当然它还可以承担一些复杂的操作,比如通过集合插入一组数据
List<user> l=new LinkedList<user>();
user u=new user("zhangsan",19);
l.add(u);
user u2=new user("zhangsan2",19);
l.add(u2);
Gson g=new Gson();
System.out.println(g.toJson(l));
//打印结果是[{"name":"zhangsan","age":19},{"name":"zhangsan2","age":19}]
//注意,对于Json而言,【】代表数组,{}代表一个对象
当然它还可以实现更复杂的对象,在一个Json对象中再嵌套一个Json对象,因为涉及到要更改user内容,这边就不演示了
2、fromjson,从我们的Json对象封装出一个一个的bean对象
user u=new user();
Gson g=new Gson();
u=g.fromJson("{name:'zhangsan',age:12}", user.class);
System.out.println(u.getName()+" "+u.getAge());
//打印结果是zhangsan 12
如果你的Json里面不止一个对象,那么你就得使用一个集合来装,我们这里模拟一个list来装的例子,在使用list装的过程中我们会使用到一个工具类,typeToken,通过它我们可以获取一个泛型的数据类型,使用方法十分简单,TypeToken(泛型)(){}.gettype()即可,返回一个type类型,这就是fromjson所需要的type类型,来自于reflect包
user u=new user();
Gson g=new Gson();
String s="[{name:'zhangsan',age:12},{name:'lisi',age:12}]";
Type lt=new TypeToken<List<user>>(){}.getType();
List<user> l=g.fromJson(s,lt);
for(user u1:l){
System.out.println(u1.getName()+" "+u1.getAge());
}
//打印结果是zhangsan 12
//lisi 12
- android gson的使用
- android Gson的使用
- android Gson的使用
- Android Gson的使用
- [Android]Gson的使用
- android-gson的使用
- android 中Gson 的使用
- [Android 知识点] Gson的使用
- Android Gson的使用总结
- gson.jar 在android种的使用
- android gson jar包的使用
- android中Gson类库的使用
- android开发之Gson的使用
- android Gson 使用的四种方式
- Android中使用Gson
- Android中Gson使用
- Android gson使用
- android-gson使用
- Java中List的各种循环方式对比
- 最常见的VC++编译错误信息
- 将ASP.NET MVC中的form提交改为ajax提交
- COleVariant的转换
- POJ 2411 Mondriaan's Dream
- android Gson的使用
- 设计模式------中介者模式(Mediator Pattern)
- 写一函数,实现删除字符串str1中含有的字符串str2.
- [leetcode] Word Ladder
- 获取手机的所有widget类名和包名
- mysql对表名大小写不敏感
- 责任链模式
- 【朗讯通主办】派客DAY第4期:探秘优秀的社会化行销DNA
- NameNode启动中image文件处理流程