2021-04-18 11:36  阅读(89)
文章分类:Java 基础教程 文章标签:JavaJava 教程
©  原文作者:w3cschool 原文地址:https://www.w3cschool.cn/java/java-date-time-methods.html

Java日期时间 - Java预定义日期时间格式

预定义格式化程序在DateTimeFormatter类中定义为常量。

  • BASIC_ISO_DATE
    格式并解析日期,而不使用两个日期组件之间的分隔符。
    例如:20140209
    20140221-0600
  • ISO_DATE
    格式并使用ISO分隔符解析日期,时间和数据时间。
    例如:2014-02-09
  • ISO_TIME
    格式并使用ISO分隔符解析日期,时间和数据时间。
    例如:15:21:32.927
    15:21:32.123-06:00
  • ISO_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.870Z
  • ISO_LOCAL_DATE
    格式或解析日期没有偏移。
    例如:2014-02-09
  • ISO_LOCAL_TIME
    格式或解析时间没有偏移。
    例如:15:30:12.123
  • ISO_LOCAL_DATE_TIME
    格式或解析无偏移的数据时间。
    例如:2014-02-09T15:29:11.214
  • ISO_OFFSET_DATE
    格式并使用ISO格式解析具有偏移量的日期。
    例如:2014-02-09-06:00
  • ISO_OFFSET_TIME
    格式并使用ISO格式解析具有偏移量的时间。
    例如:15:12:29.123-06:00
  • ISO_OFFSET_DATE_TIME
    格式并使用ISO格式解析具有偏移量的数据时间。
    例如:2014-02-09T15:33:07.07-06:0
  • ISO_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-009
  • ISO_WEEK_DATE
    格式并解析基于周的日期。 “2014-W02-4”表示2014年第二周的第四天。
    例如:2014-W02-4
    2014-W02-4-06:00
  • RFC_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);
      }
    }
    

上面的代码生成以下结果。

2021041811317_1.png

例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);
      }
    }
    

上面的代码生成以下结果。

2021041811316_2.png

点赞(0)
版权归原创作者所有,任何形式转载请联系作者; Java 技术驿站 >> Java 预定义日期时间格式
上一篇
Java 非ISO日历系统
下一篇
Java 自定义日期格式模式