默认日期年份设定为1970年

M_K*_*M_K 6 java

我需要解析一个原本没有设置年份的字符串,如"13 Aug 11:30"

但是当我输出它添加年份的日期时,我尝试了设定年份,但是年份完全错误,输出为"Thu Aug 13 11:30:00 GMT 3911"

有没有办法在解析日期后设置年份?

SimpleDateFormat formatter = new SimpleDateFormat("dd MMM HH:mm");

String dateStr = "13 Aug 11:30";
Date fromDate = (Date)formatter.parse(dateStr);


fromDate.setYear(2011);
Run Code Online (Sandbox Code Playgroud)

Bhe*_*ung 11

使用Calendar设定年份:

Calendar c = Calendar.getInstance();
c.setTime(fromDate);
c.set(Calendar.YEAR, 2011);
fromDate = c.getTime();
Run Code Online (Sandbox Code Playgroud)