google-gson使用解析
来源:互联网 发布:日本读研 知乎 编辑:程序博客网 时间:2024/05/19 20:21
今天看到一个项目中用到了,gson来处理json数据,所以注意了下怎么使用,个人觉得有个是比较简单或者虽然复杂但是有规律的json数据可以使用gson来处理,如果是较复杂的json数据还是自己解析的好。这里介绍下gson的简单使用,即实体类和json数据之间的转换。
1、首先是实体类到json数据的转换
Person实体 public class Person { private String name; private int age; /** * @return the name */ public String getName() { return name; } /** * @param name the name to set */ public void setName(String name) { this.name = name; } /** * @return the age */ public int getAge() { return age; } /** * @param age the age to set */ public void setAge(int age) { this.age = age; } @Override public String toString() { return name + ":" +age; }}
生成json数据
生成Json字符串 Gson gson = new Gson();List<Person> persons = new ArrayList<Person>();for (int i = 0; i < 5; i++) { Person p = new Person(); p.setName("name" + i); p.setAge(i * 5); persons.add(p);}String str = gson.toJson(persons)
结果:
[{"name":"name0","age":0},{"name":"name1","age":5},{"name":"name2","age":10},{"name":"name3","age":15},{"name":"name4","age":20}]
其中toJson()为主要使用转换方法。
2、再介绍从json数据到实体类的转换
先看一种简单的实体类转换:
Person person = gson.fromJson(str, Person.class);
主要使用方法:fromJson(str,class);
当要转换成list或者Set类型的时候:
List<Person> ps = gson.fromJson(str, new TypeToken<List<Person>>(){}.getType());for(int i = 0; i < ps.size() ; i++){ Person p = ps.get(i); System.out.println(p.toString());}
我们需要用到类型转换器TypeToken:new TypeToken<List<Person>>(){}.getType()
0 0
- google-gson使用解析
- Android 编程下使用 Google 的 Gson 解析 Json
- Android 编程下使用 Google 的 Gson 解析 Json
- Gson:Google的JSON解析库进阶使用
- Google的JSON解析库Gson的使用
- 解析json之com.google.gson.Gson
- 解析json之com.google.gson.Gson
- 解析json之com.google.gson.Gson
- Gson google json使用
- Google-Gson的使用
- Google Gson 使用简介
- Google Gson使用简介
- Google Gson 使用简介
- Google Gson 使用简介
- Google Gson的使用
- Google Gson使用小结
- Google Gson 使用简介
- Google Gson 使用简介
- C语言中的typeof
- RAC Ocfs2文件系统常见问题解决方法
- Android的集成新浪微博第三方登录
- 关于ios7上无法计算UITextView的contentSize.height的解决方法
- 表单的相关事件及特效
- google-gson使用解析
- 淘宝网的技术发展史(一)——个人网站时代
- 拷贝文件夹联系
- Redis的内部数据结构
- Xcode5下编译amr和speex库
- 测试驱动开发系列之七--监视产品代码
- 淘宝网的技术发展史(二) ——Oracle替换MySQL
- Sapera LT 7.2 在VS2010下的配置
- Android -- setTag的妙用和The key must be an application-specific resource id 异常