我正在使用 Gson 将 json 转换为 Java 类...firstLogin 的类型是 java.util.Date
public static void main(String[] args) {
String lineString="{\"email\":\"sadas\",\"faith\":121,\"qq\":211,\"account\":2412,\"userName\":\"asda\",\"firstLogin\":1321362590000,\"uid\":1}";
Gson gson=new Gson();
User user=gson.fromJson(lineString, User.class);
System.out.println(user.getFirstLogin());
}
异常(exception):
Exception in thread "main" com.google.gson.JsonSyntaxException: 1321362590000
at com.google.gson.internal.bind.DateTypeAdapter.deserializeToDate(DateTypeAdapter.java:78)
at com.google.gson.internal.bind.DateTypeAdapter.read(DateTypeAdapter.java:63)
at com.google.gson.internal.bind.DateTypeAdapter.read(DateTypeAdapter.java:38)
at com.google.gson.internal.bind.TypeAdapters$19$1.read(TypeAdapters.java:462)
at com.google.gson.internal.bind.TypeAdapters$19$1.read(TypeAdapters.java:466)
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.read(ReflectiveTypeAdapterFactory.java:86)
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:170)
at com.google.gson.Gson.fromJson(Gson.java:720)
at com.google.gson.Gson.fromJson(Gson.java:686)
at com.google.gson.Gson.fromJson(Gson.java:636)
at com.google.gson.Gson.fromJson(Gson.java:608)
at gsontest.GsonTest.main(GsonTest.java:22)
Caused by: java.text.ParseException: Unparseable date: "1321362590000"
at java.text.DateFormat.parse(DateFormat.java:357)
at com.google.gson.internal.bind.DateTypeAdapter.deserializeToDate(DateTypeAdapter.java:76)
... 11 more
Java Result: 1
如何解决这个问题...谢谢
最佳答案
firstLogin
在你的 json 中有一个 long 类型,所以把它作为 long
来自 JSON 的变量并创建一个新的 Date
使用 Date(long milliseconds)
构造函数。
关于java - Gson 日期类型异常 : How can i fix the exception?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8155205/