有没有办法将以下日期字符串解析为July 23 1916
而不是July 23 2016
?
System.out.println(new SimpleDateFormat("yy/MM/dd", Locale.US).parse("16/07/23"));
Java 文档(http://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html http://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html) says:
为了使用缩写年份模式(“y”或“yy”)进行解析,SimpleDateFormat 必须解释相对于某个世纪的缩写年份。它通过以下方式做到这一点将日期调整为创建 SimpleDateFormat 实例之前 80 年和之后 20 年以内。例如,使用模式“MM/dd/yy”和创建于 1997 年 1 月 1 日的 SimpleDateFormat 实例,字符串“01/11/12”将被解释为 Jan 11, 2012,而字符串“05/04/ 64”将被解释为 1964 年 5 月 4 日。
方法SimpleDateFormat.set2DigitYearStart(Date)
可以用来确定年份。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)