java.time.format.DateTimeFormatter

    Java的日期与时间
  DateTimeFormatter类是Java 8中日期时间功能里,用于解析和格式化日期时间的类,位于java.time.format包下。

 

  1.预定义的DateTimeFormatter实例
  DateTimeFormatter类包含一系列预定义(常量)的实例,可以解析和格式化一些标准时间格式。这将让你免除麻烦的时间格式定义,类中包含如下预定义的实例:

 1 BASIC_ISO_DATE
 2 
 3 ISO_LOCAL_DATE
 4 ISO_LOCAL_TIME
 5 ISO_LOCAL_DATE_TIME
 6 
 7 ISO_OFFSET_DATE
 8 ISO_OFFSET_TIME
 9 ISO_OFFSET_DATE_TIME
10 
11 ISO_ZONED_DATE_TIME
12 
13 ISO_INSTANT
14 
15 ISO_DATE
16 ISO_TIME
17 ISO_DATE_TIME
18 
19 ISO_ORDINAL_TIME
20 ISO_WEEK_DATE
21 
22 RFC_1123_DATE_TIME

  每个预定义的DateTimeFormatter实例都有不同的日期格式,我就不解释全部的了。具体的可以查阅Java官方文档,但我在这篇的后续中会解释其中几个,以方便理解。


  2.格式化日期
  当你获取一个DateTimeFormatter实例后,就可以用format()方便来将一个日期格式化为某种字符串,例如:

1 DateTimeFormatter formatter = DateTimeFormatter.BASIC_ISO_DATE;
2 String formattedDate = formatter.format(LocalDate.now());
3 System.out.println(formattedDate);

  这个样例把LocalDate对象格式化了,并输出20150703,这个输出表示现在2015年,7月3日。
  再举一个关于ZonedDateTime的例子:

1 DateTimeFormatter formatter = DateTimeFormatter.BASIC_ISO_DATE;
2 String formattedZonedDate = formatter.format(ZonedDateTime.now());
3 System.out.println("formattedZonedDate = " + formattedZonedDate);

  这个例子会输出:20150703+0200
  表示今年2015年,7月3日,位于UTC+2时区。

 

  参考:http://blog.csdn.net/tjgykhulj/article/details/69053949

posted @ 2018-01-10 16:57  靳哲  阅读(1243)  评论(0编辑  收藏  举报