-1

我有日期的字符串表示形式,需要将其转换为 Date 对象。我需要将日期时间中的一天的开始和一天的结束时间降至毫秒。这是我到目前为止所拥有的:

日期格式为:

yyyy-MM-dd'T'HH:mm:ss.SSS'Z'

一天的开始:

2013-05-19T00:00:00+00:00

一天的结束:

2013-05-19T23:59:59+59:59

“一天开始”解析正常,但“一天结束”抛出

java.lang.IllegalArgumentException: Invalid format: "2013-05-19T23:59:59+59:59" is malformed at "59:59"
4

1 回答 1

3

之后的位+不是毫秒。+引入了时区偏移。+00:00是 GMT(格林威治标准时间)。+01:00一小时后(CET;中欧时间)。

在一天的最后一毫秒,您需要:

2013-05-19T23:59:59.999
毫秒--------^^^

请注意,这是在.之前的999,因为我们真正写的是59.999秒。

如果您愿意,可以在其上添加时区指示器,例如:

2013-05-19T23:59:59.999+00:00

更多关于 ISO-8601 的信息

于 2013-05-19T10:31:45.487 回答