我有一个日期字符串Mon Feb 8 00:00:00 UTC+0530 1954
。我想将其转换为DD/MM/YYYY
格式。输出始终为08/38/1954 or 09/39/1954
。
我使用了以下代码。
SimpleDateFormat format = new SimpleDateFormat("MM/DD/YYYY", Locale.US);
System.out.println(format.format(new Date(dateStr)));
答案 0 :(得分:3)
DD
中的{p> SimpleDateFormat
用于"一年中的一天",您想要"每月的一天",即dd
。< / p>
还要注意YYYY
适用于&#34;周年&#34;,这取决于日历可以追溯到&#34;年&#34;,其表示为yyyy
。我想,无论如何你想要yyyy
。
答案 1 :(得分:2)
您需要使用parse()方法从String日期转到定义的SimpleDateFormat。
SimpleDateFormat format = new SimpleDateFormat("MM/dd/yyyy", Locale.US);
Date date = format.parse(dateStr);
System.out.println(format.format(date));
答案 2 :(得分:2)
试试这个:
SimpleDateFormat frmt = new SimpleDateFormat("E MMM d HH:mm:ss zZ yyyy", Locale.US);
Date dateStr = frmt.parse("Mon Feb 8 00:00:00 UTC+0530 1954");
答案 3 :(得分:0)
D
中的{p> SimpleDateformat
代表day in year
,其中d
代表day in month
,因此请将DD
替换为dd
。< / p>
将YYYY
替换为yyyy