你能试试这样吗?
// create a calendar
Calendar cal = Calendar.getInstance();
cal.setTime(datetime); //use java.util.Date object as arguement
// get the value of all the calendar date fields.
System.out.println("Calendar's Year: " + cal.get(Calendar.YEAR));
System.out.println("Calendar's Month: " + cal.get(Calendar.MONTH));
System.out.println("Calendar's Day: " + cal.get(Calendar.DATE));
如 javadocs 中所述;
@Deprecated public int getYear() Deprecated.从 JDK 版本 1.1 开始,替换为 Calendar.get(Calendar.YEAR) - 1900。返回一个值,该值是从包含此 Date 对象所表示的时间时刻或以此日期所表示的瞬间开头的年份中减去 1900 的结果,如在本地时区中所解释的那样。回报:此日期所代表的年份减去 1900 年。