在Android中将日期格式转换为另一个日期?

时间:2011-08-07 19:40:57

标签: java android date

我将在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);

上面的代码给出了错误。

2 个答案:

答案 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个有效数字)。

检查服务器格式。