为了能够使 Gson 适用各种常见时间格式, Gson 增加了适配器模式来解析 Date,我们只需要增加一个自定义的适配器即可。参考下面示例代码:
通过 GsonBuilder 创建一个多适配器的 gson 对象:
public static void main(String[] args) {
DateJson dateJson = new DateJson(new Date());
Gson gson = new GsonBuilder()
.registerTypeAdapter(Date.class, new DateTypeAdapter()) // 默认适配器
.registerTypeAdapter(Date.class, new CustomDateAdapter(2, 2, Locale.CHINESE)) // yyyy-MM-dd HH:mm:ss
// .registerTypeAdapter(Date.class, new CustomDateAdapter(0, 0, Locale.CHINESE)) // 2020年11月2日 星期一 上午10时54分01秒 CST
// .registerTypeAdapter(Date.class, new CustomDateAdapter(0, 1, Locale.CHINESE)) // 2020年11月2日 星期一 上午10时54分34秒
// .registerTypeAdapter(Date.class, new CustomDateAdapter(0, 3, Locale.CHINESE)) // 2020年11月2日 星期一 上午10:55
.registerTypeAdapter(Date.class, new CustomDateAdapter(1, 1, Locale.CHINESE)) // 2020年11月2日 上午1

博客介绍为使Gson适用常见时间格式,采用适配器模式解析Date,只需增加自定义适配器。还给出通过创建多适配器的gson对象及自定义适配器的示例代码,还有简单演示对象。
最低0.47元/天 解锁文章
9913

被折叠的 条评论
为什么被折叠?



