Android应用开发之(Gson的使用)
来源:互联网 发布:怪形前传结局 知乎 编辑:程序博客网 时间:2024/05/22 20:36
把Gson作为我们的JSON解析库,如何应用到我们的程序中呢?之需要引入Gson的jar包即可:
下载地址:http://code.google.com/p/google-gson/
Code Docs:http://google-gson.googlecode.com/svn/trunk/gson/docs/javadocs/index.html
使用方法:
一、对象-->JSON
假如我们有一个类Person:
public class Person {
public long id;
public String name;
public boolean isMale;
public String avatar;
}
通过一个Gson实例:
Gson gson = new Gson();
我们可以直接将一个Person实例转换成Json字符串:
Person person = new Person();
person.id= 111;
person.name= "张三";
person.isMale= true;
person.avatar= "http://aaaaaaaaa";
String jsonStr = gson.toJson(person);
Log.v("=============", jsonStr);
即使是List和Map也可以(以List为例):
ArrayList<Person> list = new ArrayList<Person>();
Person person = new Person();
person.id= 111;
person.name= "张三";
person.isMale= true;
person.avatar= "http://aaaaaaaaa";
list.add(person);
person = new Person();
ArrayList<Person> list = new ArrayList<Person>();person.id= 222;
person.name= "李四";
person.isMale= false;
person.avatar= "http://bbbbbbbbb";
list.add(person);
String jsonStr = gson.toJson(list);
Log.v("=============", list);
二、JSON-->对象
反过来如何解序列化呢(也就是解析JSON)?
还是先以Person对象为例:
private final String JSON_STR = "{\"avatar\":\"http://aaaaaaaaa\",\"name\":\"博张三\",\"id\":111,\"isMale\":true}";
Person person = gson.fromJson(JSON_STR, Person.class);
没错,就是如此简单,如果是List或者Map也同样简单(同样以List为例):
private final String JSON_STR= "[{\"avatar\":\"http://aaaaaaaaa\",\"name\":\"张三\",\"id\":111,\"isMale\":true},{\"avatar\":\"http://bbbbbbbbb\",\"name\":\"李四\",\"id\":222,\"isMale\":false}]";
Type listType = newTypeToken<List<Person>>(){}.getType();
list = gson.fromJson(JSON_STR, listType);
恩,使用起来确实比拿到JSONObject然后一层一层、一个一个去get要方便很多,不过我也是刚刚接触,正在摸索学习中,如果大家遇到问题也可以提出来一块研究。
- Android应用开发之(Gson的使用)
- Android应用开发之(Gson的使用)
- Android应用开发---GSON使用
- android开发之Gson的使用
- Android应用之——谷歌官方Json解析工具Gson的使用
- android gson的使用
- android Gson的使用
- android Gson的使用
- Android Gson的使用
- [Android]Gson的使用
- android-gson的使用
- Android开发应用之照相机的使用
- Android应用开发之PhoneStateListener 的使用
- Android应用开发------------Json工具类(fastJson和Gson的两种工具类)
- 一起来开发Android的天气软件(四)——使用Gson解析数据
- Gson的详细使用(android必备,快速提高开发效率)
- Gson的详细使用(android必备,快速提高开发效率)
- Google之gson的使用
- The patch E:\android-sdk-windows does not belong to a directory.Android studio will use this Andriod
- CF 41A Translation
- 入门TrafficServer插件开发的正确姿势
- 为什么打印log(比如printf)会经常碰到core dump?
- 从尾到头打印链表
- Android应用开发之(Gson的使用)
- 线程总结
- matlab 画图中线型及颜色设置
- 欢迎使用CSDN-markdown编辑器
- Swift 版本很好的卡片切换效果基于ZLSwipeableView(类似于[陌陌点点][探探])
- 用两个栈实现队列
- sql语句的执行顺序 以及 优化
- 话说RFID以前很火所以整理一下一年前自己处理的RFID程序,放源码
- 安装版MySQL安装图解