一般是因為服務器和手機本地時間格式不同導致的,Gson json轉換時會默認按本地格式,格式化日期.如果不成功,則再按照英文日期格式格式化日期,如果不成功則用ISO8601Utils格式化日期,如果再不成功就拋出異常
解決(語言調(diào)成英文):
Logger.i( "eeeeeee" , new Gson().toJson(getNowDate()));
Gson gson = new GsonBuilder().setDateFormat("yyyy-MM-dd").create();
Logger.i( "eeeeeee" , gson.toJson(getNowDate()));
SpUtils.obtain("test").save("test1",gson.toJson(getNowDate()));
String s = SpUtils.obtain("test").getString("test1");
Date date = gson.fromJson(s,Date.class);
Logger.i( "eeeeeee" , date.toString());
Logger.i("eeeeeee" , gson.toJson(date));
運行結果如下:
Date類為java.util.Date

image.png