该DateFormatUtils班帮助我们格式的日期和时间信息。该类使用一个类的实例org.apache.commons.lang.time.FastDateFormat来格式化日期和时间信息。与Java相比SimpleDateFormat,FastDateFormat该类是线程安全的。
如果要创建自定义日期格式,可以FastDateFormat直接使用该类。
package org.nhooo.example.commons.lang; import org.apache.commons.lang3.time.DateFormatUtils; import java.util.Date; public class DateFormattingDemo { public static void main(String[] args) { Date today = new Date(); // ISO8601格式化程序,用于不带时区的日期时间。 // 使用的格式为yyyy-MM-dd'T'HH:mm:ss。 String timestamp = DateFormatUtils.ISO_8601_EXTENDED_DATETIME_FORMAT.format(today); System.out.println("timestamp = " + timestamp); // ISO8601格式化程序,用于带时区的日期时间。 // 使用的格式为yyyy-MM-dd'T'HH:mm:ssZZ。 timestamp = DateFormatUtils.ISO_8601_EXTENDED_DATETIME_TIME_ZONE_FORMAT.format(today); System.out.println("timestamp = " + timestamp); // 在美国语言环境中,使用的格式为EEE,dd MMM yyyy HH:mm:ssZ。 timestamp = DateFormatUtils.SMTP_DATETIME_FORMAT.format(today); System.out.println("timestamp = " + timestamp); } }
代码段的结果:
timestamp = 2019-07-24T10:17:12 timestamp = 2019-07-24T10:17:12+08:00 timestamp = Wed, 24 Jul 2019 10:17:12 +0800
Maven依赖
<!-- https://search.maven.org/remotecontent?filepath=org/apache/commons/commons-lang3/3.9/commons-lang3-3.9.jar --> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> <version>3.9</version> </dependency>