Gson解析null替換為空字串

2021-07-16 03:21:42 字數 1113 閱讀 5340

json解析有很多任務具,這裡說的是最常用也是解析速度最快的gson,gson是google家出的,有乙個缺點就是無法設定null替換,

我們只能手動的批量替換伺服器返回的null了,正常的介面定義的時候是絕對不允許伺服器返回null的,後台結果卻總會出現null!

如果搜尋的話有乙個常見的答案,

gson gson = new gsonbuilder().serializenulls().create();

但是這個卻無法解決反序列問題,怎麼解決呢?我在stackoverflow上找到了這個問題,親測有效

解決辦法如下:

gson gson  = new

gsonbuilder().registertypeadapte***ctory(new

nullstringtoemptyadapte***ctory()).create();

//然後用上面一行寫的gson來序列化和反序列化實體類type

gson.fromjson(json, type);

gson.tojson(type);

//nullstringtoemptyadapte***ctory的**

public class

nullstringtoemptyadapte***ctory

implements

typeadapte***ctory

return (typeadapter

) new

stringnulladapter();

}}

// stringnulladapter**

public class

stringnulladapter

extends

typeadapter

return reader.nextstring();

}@override

public void write(jsonwriter writer, string value) throws

ioexception

writer.value(value);

}}

Gson解析null替換為空字串

json解析有很多任務具,這裡說的是最常用也是解析速度最快的gson,gson是google家出的,有乙個缺點就是無法設定null替換,我們只能手動的批量替換伺服器返回的null了,正常的介面定義的時候是絕對不允許伺服器返回null的,後台結果卻總會出現null!如果搜尋的話有乙個常見的答案,gso...

webapi json null自動替換為空字串

場景 前後端協同工作時,會遇到後端提供的webapi,某些字段屬性是null值,這樣,顯示在頁面中,將null以字串形式展示在了頁面上,很不友好,遂想到全域性將null替換為空字串 新增類 jsonoutputformatter public class nulltoemptystringresol...

使用Gson解析json時,將null轉為空字串

以下內容是從網路上找到的,經過測試可用 在使用gson解析json字串時,如果值為null,且其實體值型別為string時,將其轉換為空字串,即 如下 gson gson new gsonbuilder registertypeadapte ctory new nullstringtoemptyad...