从JodaTime获取ISO8601毫秒

时间:2013-04-25 00:00:09

标签: java date timezone jodatime iso8601

我想将我的约会"2013-03-04T23:00:00"转换为"yyyy-MM-dd'T'HH:mm:ss.SSSZ",但我会继续"2013-03-04'T'23:00:00.000+0000"。有什么帮助吗?

顺便说一下,

item.getEnd()是一个XMLGregorianCalendar。

Calendar calendar  = item.getEnd().toGregorianCalendar();
calendar.setTimeZone(TimeZone.getTimeZone("UTC"));

Date date = calendar.getTime();
DateTime iso8601 = new DateTime(calendar);

iso8601.toString("yyyy-MM-dd'T'HH:mm:ss.SSSZ");

1 个答案:

答案 0 :(得分:4)

您应该能够使用JodaTime内置的ISODateTimeFormat类。 the documentation中的示例是:

DateTime dt = new DateTime();
DateTimeFormatter fmt = ISODateTimeFormat.dateTime();
String str = fmt.print(dt);