如何在Joda Time中解析没有一年的日期时间字符串?

时间:2015-03-20 13:08:03

标签: java jodatime

我需要将字符串转换为Joda Time DateTime值。字符串表示包含日,月,小时和分钟,但没有年份。

我该怎么做?

我尝试了类似DateTimeFormat.forPattern("dd.MM HH:mm").parseDateTime("26.03 02:50")的内容,但遇到了以下异常:

org.joda.time.IllegalInstantException: Cannot parse "26.03 02:50": Illegal instant due to time zone offset transition (Europe/Moscow)
    at org.joda.time.format.DateTimeParserBucket.computeMillis(DateTimeParserBucket.java:471)
    at org.joda.time.format.DateTimeParserBucket.computeMillis(DateTimeParserBucket.java:440)
    at org.joda.time.format.DateTimeParserBucket.computeMillis(DateTimeParserBucket.java:411)
    at org.joda.time.format.DateTimeFormatter.parseDateTime(DateTimeFormatter.java:882)

1 个答案:

答案 0 :(得分:3)

你接近它...例如使用parseLocalDateTime函数:

DateTimeFormat.forPattern("dd.MM HH:mm").parseLocalDateTime("26.03 02:50");

但请注意,此解决方案会忽略任何可能的时区信息。