意外的 java SimpleDateFormat 解析异常

2022-01-12 00:00:00 datetime formatting java

我不明白为什么这几行

    Date submissionT;
    SimpleDateFormat tempDate = new SimpleDateFormat("EEE MMM d HH:mm:ss z yyyy");

    public time_print(String time) {
        try {
          submissionT=tempDate.parse(time);
        }
        catch (Exception e) {     
          System.out.println(e.toString() + ", " + time);
        }

    }

引发异常并打印出来

    java.text.ParseException: Unparseable date: "Tue Mar 31 06:09:00 CEST 2009", Tue Mar 31 06:09:00 CEST 2009

...虽然不可解析"时间符合我传递给 SimpleDateFormat() 的格式字符串..有什么想法吗?

... while the "unparsable" time is compliant with the format string i've passed to SimpleDateFormat().. Any Idea?

推荐答案

这是一个语言环境问题.使用:

It is a Locale issue. Use:

sdf = SimpleDateFormat("EEE MMM d HH:mm:ss z yyyy", Locale.US);

相关文章