请注意,在JAVA SE 8中引入了新的java.time(JSR-310)包。 这代替了Joda时间,建议Joda用户进行迁移。有关JAVA
SE≥8格式化日期和时间的方式,请参见下文。
乔达时间
创建一个DateTimeFormatter
使用DateTimeFormat.forPattern(String)
使用Joda时间,您可以这样做:
String dateTime = "11/15/2013 08:00:00";// Format for inputDateTimeFormatter dtf = DateTimeFormat.forPattern("MM/dd/yyyy HH:mm:ss");// Parsing the dateDateTime jodatime = dtf.parseDateTime(dateTime);// Format for outputDateTimeFormatter dtfOut = DateTimeFormat.forPattern("MM/dd/yyyy");// Printing the dateSystem.out.println(dtfOut.print(jodatime));标准Java≥8
Java 8引入了新的日期和时间库,使处理日期和时间更加容易。如果要使用标准Java版本8或更高版本,则可以使用DateTimeFormatter。由于您
String的java.time.LocalDateTime或LocalDate中没有时区,因此可以使用时区变体ZonedDateTime和ZonedDate。
// Format for inputDateTimeFormatter inputFormat = DateTimeFormatter.ofPattern("MM/dd/yyyy HH:mm:ss");// Parsing the dateLocalDate date = LocalDate.parse(dateTime, inputFormat);// Format for outputDateTimeFormatter outputFormat = DateTimeFormatter.ofPattern("MM/dd/yyyy");// Printing the dateSystem.out.println(date.format(outputFormat));标准Java <8
在Java
8之前,您将使用SimpleDateFormat和java.util.Date
String dateTime = "11/15/2013 08:00:00";// Format for inputSimpleDateFormat dateParser = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss");// Parsing the dateDate date7 = dateParser.parse(dateTime);// Format for outputSimpleDateFormat dateFormatter = new SimpleDateFormat("MM/dd/yyyy");// Printing the dateSystem.out.println(dateFormatter.format(date7));


