[转]java8日期时间格式化DateTimeFormatter多个格式
原文地址:datetimeformatter.ofpattern multiple formats-掘金
DateTimeFormatter
是一个用于日期时间格式化和解析的类。使用 ofPattern
方法可以创建一个格式化器,该方法接受一个日期时间格式的字符串作为参数。
如果您需要在同一个 DateTimeFormatter
对象中支持多种不同的日期时间格式,可以使用 ofPattern
方法的重载形式,将多个格式字符串放在一个数组中作为参数。例如:
java
复制代码
DateTimeFormatter formatter = DateTimeFormatter.ofPattern(
"[yyyy-MM-dd'T'HH:mm:ss.SSS'Z'][yyyy-MM-dd'T'HH:mm:ss.SSS][yyyy-MM-dd'T'HH:mm:ss][yyyy-MM-dd]"
);
上面的代码中,DateTimeFormatter
对象 formatter
支持多种不同的日期时间格式,包括:
yyyy-MM-dd'T'HH:mm:ss.SSS'Z'
:带时区的完整日期时间格式,例如:2022-02-25T15:30:45.123Z。yyyy-MM-dd'T'HH:mm:ss.SSS
:不带时区的完整日期时间格式,例如:2022-02-25T15:30:45.123。yyyy-MM-dd'T'HH:mm:ss
:不带毫秒和时区的日期时间格式,例如:2022-02-25T15:30:45。yyyy-MM-dd
:只有日期的格式,例如:2022-02-25。
当您使用这个多格式的 DateTimeFormatter
对象格式化或解析日期时间时,DateTimeFormatter
会依次尝试使用数组中的格式字符串,直到找到与输入的日期时间匹配的格式为止。
这样,您就可以通过一个 DateTimeFormatter
对象支持多种不同的日期时间格式了。
其他参考文章: