0

我有像“2015-07-13T10:44:58Z”这样的时间戳字符串,当我尝试在日期对象中转换它时,它总是会生成异常

Caused by: java.text.ParseException: Unparseable date: "2015-07-13T10:44:58Z"

我用于解析的代码是这样的

    DateFormat format = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'");
    Date subscriptionDate = format.parse("2015-07-13T10:44:58Z");

我不知道我做错了什么。

4

2 回答 2

1

该模式SSS代表Millisecond- 这意味着您的输入需要在第二个之后有 3 个小数位 -请参见此处

但是,您的输入没有毫秒信息。您必须SSS手动删除或添加数字 ( .000)。

于 2015-07-13T11:10:59.070 回答
1

您的输入与您的模式不一致:模式具有毫秒信息 (.SSS) 而输入没有(它以秒结尾,后跟“Z”)。因此,您应该在输入中提供毫秒或从日期模式中删除 .SSS

于 2015-07-13T11:17:30.037 回答