不得不說,Gson用起來確實(shí)挺方便的,但是最近發(fā)現(xiàn)很多人在使用Gson的時(shí)候,會(huì)出現(xiàn)各種問題,尤其是新手,下面我給出幾個(gè)問題的解決方法,希望對(duì)你有用。
- 找不到Gson.jar的下載地址的,直接去github上下載,不用借助他人的各種網(wǎng)盤或csdn等。下載地址是:https://github.com/google/gson
- Gson如何將json字符串解析為Object:
String jsonStr="";//json字符串
Gson gson = new Gson();
Result obj = gson.fromJson(jsonStr,Result.class);//Result是json對(duì)應(yīng)的實(shí)體類
- Gson如何將Object轉(zhuǎn)化為json字符串:
String jsonStr = new Gson().toJson(Result.class);
- Gson將json字符串轉(zhuǎn)為Object時(shí)候,經(jīng)常會(huì)出現(xiàn)異常,如json字符串為空、json字符串不正確,我們可以封裝一個(gè)類,來統(tǒng)一處理:
package cn.studyou.parchment.utils;
import android.text.TextUtils;
import com.google.gson.Gson;
import cn.studyou.baselibrary.log.L;
/**
* 基本功能:Gson解析
* 創(chuàng)建:王杰
* 創(chuàng)建時(shí)間:16/3/15
* 郵箱:w489657152@gmail.com
*/
public class GsonUtils {
public static Object fromJson(String jsonStr,Class clazz){
Object object = null;
if (!TextUtils.isEmpty(jsonStr)) {
try {
object = new Gson().fromJson(jsonStr, clazz);
}catch (Exception e){
e.printStackTrace();
L.e("Gson fromJson is error!");
}
}
return object;
}
- Gson將復(fù)雜的json字符串轉(zhuǎn)換為Object時(shí),如果手動(dòng)編寫實(shí)體類,簡(jiǎn)直太累了,為什么不選擇一種簡(jiǎn)單的方法呢?在Android studio中使用GsonFormat插件會(huì)很easy,GsonFormat安裝和使用都很簡(jiǎn)單。這里有安裝方法和教程:https://github.com/zzz40500/GsonFormat。安裝了這個(gè)插件,我相信你就不用再為復(fù)雜的json實(shí)體類頭疼了。