如何在Java 8中格式化LocalDateTime

java.time.LocalDateTime 类可以使用format方法和Formatter来格式化。

句法:

LocalDateTime ldt = LocalDateTime.now();
String formattedDate3 = ldt.format(DateTimeFormatter.ofPattern("yyyy-MM-dd hh:mm a"));

例:

以下示例使用现在创建一个LocaDateTime。 然后将其格式化为ISO_DATE_TIME,24H格式和12H格式。 然后将输出写入System out。 不是在12h格式中添加了一个格式来显示是AM还是PM。

创建以下java文件:

import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;

public class LocalDateTimeTest {

    public static void main(String[] argv) {
	LocalDateTime ldt = LocalDateTime.now();

	String formattedDateIso = ldt.format(DateTimeFormatter.ISO_DATE_TIME);

	String formattedDate2 = ldt.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
	String formattedDate3 = ldt.format(DateTimeFormatter.ofPattern("yyyy-MM-dd hh:mm a"));

	System.out.println("Date in iso format: " + formattedDateIso);
	System.out.println();
	System.out.println("Date in 24H format: " + formattedDate2);
	System.out.println("Date in 12H format: " + formattedDate3);
    }
}


输出将是:

Date in iso format: 2017-10-13T16:48:25.227

Date in 24H format: 2017-10-13 16:48:25
Date in 12H format: 2017-10-13 04:48 PM

参考文献:

Lambda Expressions