Gson是谷歌编写的一个jar包,这个jar包主要对json字符串于对象之间进行的数据转换,用起来特别方便可以节省很多的代码提高效率。下面直接上代码大家一看就知道啦!
在写代码之前要先下载对应的jar包:下载google-gson-2.2.1-release.zip包。
它包含两种主要操作:一种是将对象或者不同的内容转化为JSON格式,一种是将JSON格式的内容还原到相应的对象属性或者其他属性。
使用步骤:
1、首先使用:Gson gson = new Gson(); 创建gson对象
2、要把数据转化为JSON格式时,可以在新建一个JavaBean类:
例子一:讲user对象转换成json字符串对象
代码语言:javascript复制public class User {
private String userName;
private String userPassword;
public void setUserName(String userName) {
this.userName = userName;
}
public String getUserName() {
return userName;
}
public void setUserPassword(String userPassword) {
this.userPassword = userPassword;
}
public String getUserPassword() {
return userPassword;
}
@Override
public String toString() {
return userName " " userPassword;
}
}
转换关键代码为: List<User>list=new ArrayList<User>(); for(int i=0;i<5;i ){ User u=new User(); u.setUserName("user_name_" i); u.setUserPassword("user_psd_" i); list.add(u); } String str=gson.toJson(list);
输出结果为: [{"userName":"user_name_0","userPassword":"user_psd_0"}, {"userName":"user_name_1","userPassword":"user_psd_1"}, {"userName":"user_name_2","userPassword":"user_psd_2"}, {"userName":"user_name_3","userPassword":"user_psd_3"}, {"userName":"user_name_4","userPassword":"user_psd_4"}]
看结果是不是很明显就是json字符串的格式啊,真的很nice。
例子二:将json字符串转换为user对象
其中关键代码: String str=gson.toJson(list); Log.w("System.out",str); List<User>u2=gson.fromJson(str,new TypeToken<List<User>>(){}.getType()); for(int i=0;i<u2.size();i ){ User user=(User)u2.get(i); Log.w("System.out",user.toString()); } 结果为: user_name_0 user_psd_0 user_name_1 user_psd_1 user_name_2 user_psd_2 user_name_3 user_psd_3 user_name_4 user_psd_4
结果很明显就是转换成功啦,使用起来特别方便。