Java 预定义日期时间格式
2018-03-12 15:09 更新
Java日期时间 - Java预定义日期时间格式
预定义格式化程序在DateTimeFormatter
类中定义为常量。
BASIC_ISO_DATE
格式并解析日期,而不使用两个日期组件之间的分隔符。
例如:20140209
20140221-0600ISO_DATE
格式并使用ISO分隔符解析日期,时间和数据时间。
例如:2014-02-09ISO_TIME
格式并使用ISO分隔符解析日期,时间和数据时间。
例如:15:21:32.927
15:21:32.123-06:00ISO_DATE_TIME
格式并使用ISO分隔符解析日期,时间和数据时间。
例如:2014-02-09-06:00
2014-02-09T15:20:07.123-06:00
2014-02-09T15:20:07.123-06:00[America/Chicago]ISO_INSTANT
格式并解析表示时间的即时或日期时间对象,例如UTC格式的ZonedDateTime。
例如:2014-02-09T21:23:56.870ZISO_LOCAL_DATE
格式或解析日期没有偏移。
例如:2014-02-09ISO_LOCAL_TIME
格式或解析时间没有偏移。
例如:15:30:12.123ISO_LOCAL_DATE_TIME
格式或解析无偏移的数据时间。
例如:2014-02-09T15:29:11.214ISO_OFFSET_DATE
格式并使用ISO格式解析具有偏移量的日期。
例如:2014-02-09-06:00ISO_OFFSET_TIME
格式并使用ISO格式解析具有偏移量的时间。
例如:15:12:29.123-06:00ISO_OFFSET_DATE_TIME
格式并使用ISO格式解析具有偏移量的数据时间。
例如:2014-02-09T15:33:07.07-06:0ISO_ZONED_DATE_TIME
格式并使用区域ID解析日期时间(如果可用)。
例如:2014-02-09T15:45:49.123-06:00
2014-02-09T15:45:12.112-06:00[America/Chicago]ISO_ORDINAL_DATE
格式并解析具有年和年的日期。
例如:2014-009ISO_WEEK_DATE
格式并解析基于周的日期。 “2014-W02-4”表示2014年第二周的第四天。
例如:2014-W02-4
2014-W02-4-06:00RFC_1123_DATE_TIME
格式并使用RFC1123规范解析电子邮件的数据时间。
例如:Thu, 9 Jan 2014 15:12:12 -060
例子
我们可以使用DateTimeFormatter类中的以下方法来格式化日期时间值。
String format(TemporalAccessor temporal) void formatTo(TemporalAccessor temporal, Appendable appendable)
以下代码显示如何使用ISO_DATE格式化程序格式化LocalDate,OffsetDateTime和ZonedDateTime。
import java.time.LocalDate; import java.time.OffsetDateTime; import java.time.ZonedDateTime; import java.time.format.DateTimeFormatter; public class Main{ public static void main(String[] argv){ String ldStr = DateTimeFormatter.ISO_DATE.format(LocalDate.now()); System.out.println(ldStr); String odtStr = DateTimeFormatter.ISO_DATE.format(OffsetDateTime.now()); System.out.println(odtStr); String zdtStr = DateTimeFormatter.ISO_DATE.format(ZonedDateTime.now()); System.out.println(zdtStr); } }
上面的代码生成以下结果。
例2
我们还可以使用格式()从日期时间类格式化日期时间对象。
import java.time.LocalDate; import java.time.OffsetDateTime; import java.time.ZonedDateTime; import java.time.format.DateTimeFormatter; public class Main { public static void main(String[] argv) { LocalDate ld = LocalDate.now(); String ldStr = ld.format(DateTimeFormatter.ISO_DATE); System.out.println("Local Date: " + ldStr); OffsetDateTime odt = OffsetDateTime.now(); String odtStr = odt.format(DateTimeFormatter.ISO_DATE); System.out.println("Offset Datetime: " + odtStr); ZonedDateTime zdt = ZonedDateTime.now(); String zdtStr = zdt.format(DateTimeFormatter.ISO_DATE); System.out.println("Zoned Datetime: " + zdtStr); } }
上面的代码生成以下结果。
以上内容是否对您有帮助:
更多建议: