我需要将字符串转换为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)
答案 0 :(得分:3)
你接近它...例如使用parseLocalDateTime函数:
DateTimeFormat.forPattern("dd.MM HH:mm").parseLocalDateTime("26.03 02:50");
但请注意,此解决方案会忽略任何可能的时区信息。