带有德语语言环境的SimpleDateFormat是否应该能够使用时区CEST解析字符串?

时间:2018-09-26 14:32:26

标签: java timezone locale simpledateformat ibm-jre

我有一个Java应用程序,该应用程序在测试中基本上包含以下代码,并希望它引发异常:

String date = "Fr August 21 16:41:32 CEST 2015";
DateFormat dateFormat = new SimpleDateFormat("EEE MMMM dd HH:mm:ss z yyyy", Locale.GERMANY);
dateFormat.parse(date);

虽然应用程序在Suns Java 1.7下运行,但总是会出现以下异常,正如预期的那样失败:

java.text.ParseException: Unparseable date: "Fr August 21 16:41:32 CEST 2015"

它失败了,因为CEST不是德国语言环境的合法时区。当我现在在IBM Java 1.8下运行相同的测试时,它现在可以成功解析为

Fr August 21 16:41:32 MESZ 2015

所以我想知道哪种行为是正确的?我现在有错误还是以前有错误?还是我以某种方式错过了某些配置?

0 个答案:

没有答案