由于无法解析的日期错误

时间:2017-12-13 10:53:50

标签: java

我在这行中有错误:

String mDate = new SimpleDateFormat("dd MM yyyy").format(new SimpleDateFormat("EEE MMM dd kk:mm:ss zZZZ yyyy").parse(myDate.toString()));

错误:

  

java.text.ParseException:Unparseable date:“Thu Dec 14 00:00:00 GMT + 02:00 2017”(偏移0处)

如果错误发生错误,那么这种日期格式适合哪种模式?

我知道很多主题存在类似的问题。但我问题的关键是我约会的正确日期格式。

1 个答案:

答案 0 :(得分:2)

您的默认语言区域是什么?

如果你运行:

System.out.println(new SimpleDateFormat("EEE MMM dd kk:mm:ss zzzz yyyy", Locale.US)
            .parse("Thu Dec 14 00:00:00 GMT+02:00 2017"));

它会解析日期,但是如果你运行它:

System.out.println(new SimpleDateFormat("EEE MMM dd kk:mm:ss zzzz yyyy", Locale.GERMAN)
            .parse("Thu Dec 14 00:00:00 GMT+02:00 2017"));

因为ThuDec是英文单词。因此,请检查您的默认语言环境,因为如果您没有将本地语言传递给SimpleDateFormat,它将采用默认值(如果您四处搜索),如SimpleDateFormat类中所示。

 Locale.getDefault(Locale.Category.FORMAT));