GSON为Google的一个开源JSON解析工具包,Gighub网址:https://github.com/google/gson。使用GSON解析JSON数据,可以大大简化JSON数据解析过程,并避免参数缺少或对应不上等问题。
在使用GSON之前,在内层的build.gradle文件,也就是app/build.gradle文件的de-pendencies中增加如下内容。
添加以上内容,应用会自动下载GSON库,目前最新的版本是2.8.0,如图9-8所示
在GSON的API中,提供了两个重要的方法:toJson()和fromJson()方法。其中,toJson()方法用于实现将Java对象转换为相应的JSON数据,fromJson()方法则用于实现将JSON数据转换为相应的Java对象。
1.toJson()方法
toJson()方法用于将Java对象转换为相应的JSON数据,主要有以下几种形式。
String toJson(JsonElement jsonElement)
String toJson(Object src)
String toJson(Object src,Type typeOfSrc)
其中,第一个方法用于将JsonElement对象(可以是JsonObject、JsonArray等)转换成JSON数据;第二个方法用于将指定的Object对象序列化成相应的JSON数据;第三个方法用于将指定的Object对象(可以包括泛型类型)序列化成相应的JSON数据。
图9-8 下载的GSON库
2.fromJson()方法
fromJson()方法用于将JSON数据转换为相应的Java对象,主要有以下几种形式。(www.xing528.com)
<T>T fromJson(JsonElement json,Class<T>classOfT)
<T>T fromJson(JsonElement json,Type typeOfT)
<T>T fromJson(JsonReader reader,Type typeOfT)
<T>T fromJson(Reader reader,Class<T>classOfT)
<T>T fromJson(Reader reader,Type typeOfT)
<T>T fromJson(String json,Class<T>classOfT)
<T>T fromJson(String json,Type typeOfT)
以上的方法用于将不同形式的JSON数据解析成Java对象。
新建项目GSON_Test,MainActivity的代码如下。
运行结果如图9-9所示。
图9-9 GSON示例运行结果
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。