格式无效:“ CEST + 0200”的格式为“ 2019-05-10 18:45:00”

时间:2019-05-09 12:29:40

标签: java android jodatime

无法将此日期格式和约达时间转换为本地时间

我已经在使用最新的joda版本2.10.1,并且我已经尝试过通过更改格式或添加语言环境来解决许多问题,但均无效。

val dateTimeFormatter = DateTimeFormatterBuilder().appendPattern("yyyy-MM-dd HH:mm:ss zZ").toFormatter()
        return dateTimeFormatter.withLocale(Locale.GERMANY).parseDateTime("2019-05-10 18:45:00 CEST+0200")

以下评论中提到的问题不是将我的问题视为重复问题的好参考,因为那里的答案实际上并不能解决问题。

1 个答案:

答案 0 :(得分:0)

我最终从时间字符串中删除了CEST,仅使用了偏移量(+0200),它与java.timejodatime一起使用时效果很好。 不过,我注意到一些有趣的事情,即java.timejodatime处理日期模式的方式有所不同。 例如,以下日期字符串2019-05-10 18:45:00 CEST+0200和以下模式yyyy-MM-dd HH:mm:ss ZZZ将在java.time中起作用,但在jodatime中将不起作用,但是对于模式yyyy-MM-dd HH:mm:ss Z,它们都会理解日期的内容。