This question already has an answer here:
SimpleDateFormat(“dd-MMM-YYYY”) printing year one year ahead [duplicate]
(1个答案)
3年前关闭。
我有一个关于Class SimpleDateFormat的问题。
我想转换日期字符串的格式。
日期是2011年11月21日,我希望将其转换为111121。
这是我的代码:
控制台中的结果为CET 2011星期一1月3日00:00:00和110103。
因此,格式化部分可以正常工作,但解析部分与预期的不同。
(1个答案)
3年前关闭。
我有一个关于Class SimpleDateFormat的问题。
我想转换日期字符串的格式。
日期是2011年11月21日,我希望将其转换为111121。
这是我的代码:
public class Main {
private static final SimpleDateFormat oldSimpleDateFormat = new SimpleDateFormat("dd.MM.YYYY");
private static final SimpleDateFormat newSimpleDateFormat = new SimpleDateFormat("YYMMdd");
private static String oldDate = "21.11.2011";
private static Date myDate = oldSimpleDateFormat.parse(oldDate, new ParsePosition(0));
private static String newDate = newSimpleDateFormat.format(myDate);
public static void main(String[] args){
System.out.println(myDate);
System.out.println(newDate);
}
}
控制台中的结果为CET 2011星期一1月3日00:00:00和110103。
因此,格式化部分可以正常工作,但解析部分与预期的不同。
最佳答案
当您应该使用YYYY
(小写)时,您正在使用yyyy
(大写)。Y
表示“周年”。 y
表示“年份”。
关于java - Java SimpleDateFormat解析奇数结果,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39156326/
10-12 22:19