在设置日期格式期间,SimpleDateFormat不正确地将年份向前滚动
我目前正在使用一个DateUtils类,它可以帮助设置整个系统中日期的格式。 我有一个yyyyMMdd格式的日期,它是从字符串解析而来的。
我传入另一种格式以接收格式为E d MMM YY的"Period"值。下面应该给我的周期是MON 31 DEC 18。但是它返回MON 31 DEC 19。为什么年份向前滚动?
谢谢
final SimpleDateFormat dateFormat_E_d_MMM_YY = new SimpleDateFormat("E d MMM YY");
final SimpleDateFormat dateFormat_yyyyMMdd = new SimpleDateFormat("yyyyMMdd");
final Date date = dateFormat_yyyyMMdd.parse("20181231");
System.out.println(date);
System.out.println(dateFormat_E_d_MMM_YY.format(date));
解决方案
您使用的是E d MMM yy
而不是E d MMM YY
。
来自文档:
y:年
Y:周年
相关文章