Java - 从字符串解析日期

Yat*_*oel 0 java parsing date

我想解析java.util.Date一个字符串.我尝试了以下代码但得到了意外的输出:

Date getDate() {
    Date date = null;

    SimpleDateFormat sdf = new SimpleDateFormat("EEE MMM dd");
    try {
        date = sdf.parse("Sat May 11");
    } catch (ParseException ex) {
        Logger.getLogger(URLExtractor.class.getName()).log(Level.SEVERE, null, ex);
        return null;
    }

    return date;
}
Run Code Online (Sandbox Code Playgroud)

当我运行上面的代码时,我得到以下输出:

Mon May 11 00:00:00 IST 1970
Run Code Online (Sandbox Code Playgroud)

tan*_*ens 6

您没有在字符串中指定年份.默认年份是1970年.1970年5月11日是星期一 - SimpleDateFormat只是忽略了字符串中的工作日.

DateFormatjavadoc:

日期表示为Date对象或自1970年1月1日00:00:00 GMT以来的毫秒数.