一、基本介绍
1、GSON为Google的一个开源json解析工具包,Gighub地址:https://github.com/google/gson
2、使用GSON解析json数据,可以大大简化json数据解析过程及避免参数缺少或对应不上问题。
二、使用GSON解析数据
1、基本使用,比较简单:
1)定义好需要解析数据的数据结构。
public class DataBean { public String id; public String name; public ArrayList<String> addressList; @SerializedName("price1") public String price; transient public String Other; } |
2)使用“gson.fromJson”即可得到需要的数据。
public DataBean parseData(String data) { final Gson gson = new Gson(); final DataBean result = gson.fromJson(data, DataBean.class); return result; } |
2、注解
1)“@SerializedName("alias")”:设置该参数对应在json数据中别名。
2)“transient”:屏蔽对应的参数。
三、使用GSON生成json数据
用法同解析json数据基本相似,是一个方向过程;生成的json数据的标签跟数据结构定义的参数一样。
public String reparseData(DataBean dataBean) { final Gson gson = new Gson(); final String result = gson.toJson(dataBean); return result; } |
四、注意事项
1、直接解析数组数据,方式稍有差异,如下:
List<DataBean > pastHisList = gson.fromJson(jsonData, new TypeToken < List <DataBean>>() { }.getType()); |
2、直接将list方向生成json数据:
final String tempParams = gson.toJson(dataList, new TypeToken<List<DataBean>>() { }.getType()); |