我将在2011-10-01T21:00:00.0000000-07:00格式中从服务器获取日期。我试图使用“yyyy-MM-dd'T'HH:mm:ss.SSSZ”这种格式的SimpleDateFormat类转换它。但它总是给我Parser例外。
有人能告诉我转换它可能有什么问题吗?
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssSSSSSZ");
Date eventDate = dateFormat.parse(date);
上面的代码给出了错误。
答案 0 :(得分:2)
Capital S大约需要1到3个字符,在那里你有7个字符。这可能是个问题。如果毫秒不重要,请尝试删除它们。如果你想尝试一些随机的尝试,可以在那里放七个S,看看它是否有帮助。
P.S。在上面的代码片段中,您缺少ss和SSSS之间的点
答案 1 :(得分:1)
您的格式错误:在字符串2011-10-01T21:00:00.0000000-07:00
中,您有太多的毫秒字节。 SSS
格式字符串恰好需要3个零(毫秒计数不能超过3个有效数字)。
检查服务器格式。