嗨我有时间字符串格式:2017-02-20 09:57:08.512534 + 00
如何将以上格式更改为" dd // MM / yyyy" java中的格式?
答案 0 :(得分:2)
使用parse方法将String转换为date对象 然后根据您的要求使用格式化方法格式化日期对象
SimpleDateFormat format1 = new SimpleDateFormat("yyyy-MM-dd");
SimpleDateFormat format2 = new SimpleDateFormat("dd/MM/yyyy");
Date date = format1.parse("2017-02-20 09:57:08.512534+00");
System.out.println(format2.format(date));
答案 1 :(得分:1)
如果您可以使用Java 8,请自己使用Java 8 java.time
类:
String dateTime = "2017-02-20 09:57:08.512534+00";
String date = LocalDateTime.parse(dateTime, DateTimeFormatter.ofPattern("uuuu-MM-dd HH:mm:ss.SSSSSSx"))
.format(DateTimeFormatter.ofPattern("dd/MM/yyyy"));
System.out.println(date);
打印
20/02/2017
从表面看,它与使用现在过时的类(Date
和SimpleDateFormat
)的版本看起来非常相似。仍然。首先,为了您自己的利益,您将希望学习使用新类,而不是遗留类。此外,如果有一天你想要使用日期的其他东西而不是从一个字符串表示转换为另一个字符串表示,LocalDateTime
和朋友的多功能性和丰富的选项可能是有用的。
答案 2 :(得分:0)
DateFormat format = new SimpleDateFormat("dd/MM/yyyy");
Date date = format.parse(myString);