我很抱歉,如果这是一个非常愚蠢的错误,我正在做但我似乎无法看到它。我试图通过使用SimpleDateFormat以“yyyy-MM-dd'T'HH:mm:ss.SSSZ”作为格式字符串来解析2012-08-28T21:52:57.020Z时得到一个Unparsable日期异常。有人可以指出我的问题。
答案 0 :(得分:6)
我不认为SimpleDataFormat会将解析后的String中的“Z”解析为时区。 :(它只是以格式作为找到时区的地方Z
。
尝试格式"yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"
或尝试更好地处理时区的JodaTime。
答案 1 :(得分:2)
最后的'Z'对应于时区。您应该将输入中的“Z”替换为IST / EST等时区ID,
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSZ");
String date = "2012-08-28T21:52:57.020IST";
System.out.println(df.parse(date));
output: Tue Aug 28 21:52:57 IST 2012