2016-02-17 73 views
-1

我有下面的代码片断,根据格式将毫秒转换为日期。我正在使用乔达时间2.3。在Joda中将毫秒转换为DateTime格式时的语法分析错误

final Long currentMs = new DateTime().getMillis()); 
DateTimeFormatter currentMsTimeFormat = DateTimeFormat.forPattern("yyyy-MM-dd'T'HH:mm:ssZ"); 
DateTime dt = currentMsTimeFormat.parseDateTime(String.valueOf(currentMs)); 
System.out.println(dt.toString()); 

当我运行这个程序,我得到以下错误:

java.lang.IllegalArgumentException: Invalid format: "1455711149006" is malformed at "9006" 

其中1455711149006currentMs值。

+1

请阅读文档。 “1455711149006”应该如何用'“yyyy-MM-dd'T'HH:mm:ssZ”'来解析。另请注意,发布的代码会创建一个DateTime实例,将其转换为ms,然后尝试将其解析为DateTime,这是什么意思。 –

+0

毫秒不能直接用您的格式解析。你应该把它转换成一些'Date'。 – Satya

回答