如何用java解析这个日期格式?

如何用java解析这个日期格式?,java,datetime,Java,Datetime,简单的问题:这个日期应该使用什么格式 2011-10-09T05:06:03.000000Z 这个不起作用: "yyyy-MM-dd'T'HH:mm:ssZZ" 手册中写道:“时间戳是根据历元刻度(zulu)计算的,格式=%Y-%m-%dT%H:%m:%S.%fZ”我想简短的回答是“你不能”。由于某些原因,Java不支持“Z”作为时区标识符。不过,您可以这样做: SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss

简单的问题:这个日期应该使用什么格式

2011-10-09T05:06:03.000000Z
这个不起作用:

"yyyy-MM-dd'T'HH:mm:ssZZ"

手册中写道:“时间戳是根据历元刻度(zulu)计算的,格式=%Y-%m-%dT%H:%m:%S.%fZ”

我想简短的回答是“你不能”。由于某些原因,Java不支持“Z”作为时区标识符。不过,您可以这样做:

SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");
df.setTimeZone(TimeZone.getTimeZone("UTC"));
Date d = df.parse("2011-10-09T05:06:03.000000Z");

这假设日期将以UTC为单位,并忽略Z。

最后一组零是什么?毫秒?时区偏移量?@sjr java.text.ParseException:不可解析日期:“2011-11-23T21:59:00.000000Z”@roddyoffrozenpeas不知道,这不是我创造的东西。这是我正在处理的一个公共数据集。“yyyy-MM-dd'T'HH:MM:ss.SSSSSS'Z'”,Z可能代表Zulu(UTC)。似乎还有另一个SO线程: