原文网址:Java时间--DateTimeFormatter的使用_IT利刃出鞘的博客-CSDN博客
简介
说明
本文用示例介绍Java中的DateTimeFormatter的用法。
Java中的DateTimeFormatter是用来格式化JDK8的新的日期类的,比如:LocalDateTime、LocalDate、LocalTime。
线程安全
DateTimeFormatter是线程安全的。Date的格式化工具SimpleDateFormat不是线程安全的。
简单示例
package org.example.a;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
public class Demo{
public static void main(String[] args) {
LocalDateTime now = LocalDateTime.now();
//预定义的格式进行格式化
String date = DateTimeFormatter.ISO_LOCAL_DATE_TIME.format(now);
System.out.println(date);
//自定义格式进行格式化
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
System.out.println(formatter.format(now));
// 或者这样写:
// System.out.println(now.format(formatter));
//自定义格式进行格式化(带毫秒)
DateTimeFormatter formatter1 = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.SSS");
System.out.println(formatter1.format(now));
}
}
执行结果
2020-07-29T23:03:03.014
2020-07-29 23:03:03
2020-07-29T23:03:03.014
示例大全
1.中文的月份
package com.example.a;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.util.Locale;
public class Demo {
public static void main(String[] args) {
LocalDate now = LocalDate.now();
DateTimeFormatter formatter = null;
formatter = DateTimeFormatter.ofPattern("dd MM yyyy");
System.out.println(formatter.format(now));
formatter = DateTimeFormatter.ofPattern("dd MMM yyyy");
System.out.println(formatter.format(now));
formatter = DateTimeFormatter.ofPattern("dd MMMM yyyy");
System.out.println(formatter.format(now));
}
}
结果
19 04 2023
19 四月 2023
19 四月 2023
可以发现,大于等于三个MMM时,就能输出本地语言对应的月份。
2.英文的月份
要输出英文时,要指定语言。
上边是文章的部分内容,为便于维护,全文已转移到此网址:Java时间(JDK8)-DateTimeFormatter的使用 - 自学精灵