android-关于Gson和json的解析转化使用

时间:2021-06-08 10:26:57

做项目的时候,通常都会用到json,这里是用Gson对json的使用的一个整理

ps:下面是as里Gson用到的依赖

compile 'com.google.code.gson:gson:2.2.4'

一、把json字符串转换成Object类

  Gson gson = new Gson();
JobBean bean= gson.fromJson(sb.toString(),new TypeToken<JobBean>() {}.getType());

二、把json字符串转换成Map<>类或List<>对象

   Gson gson =new Gson();
Map<String, String> map = gson .fromJson(data, new TypeToken<Map<String, String>>() {}.getType());

List<JobBean> list= gson.fromJson(data, new TypeToken<List<JobBean>>() {}.getType());

三、把Map、List对象或者Object类封装成json字符串

   Gson gson = getGson();
ArrayList<JobBean> list = new ArrayList<JobBean>();
String json= gson.toJson(list);

四、@SerializedName注解

使用Gson解析json字符串的时候,如果定义的变量名与json串中的key有差异会出现解析失败的情况,@SerializedName注解就是为了解决这个问题,把里面的key转换成我们需要的变量

public class User{

@SerializedName("user_name")
private String userName;

}

五、as的GsonFormat插件

主要用于使用Gson库将JSONObject格式的String 解析成实体(json字符串快速生成javabean),该插件可以加快开发进度,使用非常方便,效率高。
使用方法:
1,安装GsonFormat插件:Setting->Plugins->搜索里输入GsonFormat->点击下载安装
android-关于Gson和json的解析转化使用android-关于Gson和json的解析转化使用

2.新建一个类,右击GsonFormat,把需要解析的json串黏贴进去,点击Format,然后确定,就会自动生成对应的变量和get()和set()方法,如果点击确定没有反应并且出现感叹号,检查看看json串格式是否正确,字符格式是否正确,是否有缺漏

android-关于Gson和json的解析转化使用