时间格式化

  1. jdk8中两个包都可以实现转换指定string格式

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    使用DateTimeFormatter和LocalDateTime时,下面两种转换为指定格式string的format都可以,
    但是通过传参可以看出为什么stdFormat.format(localDateTime1);也可以,因为LocalDateTime实现了Temporal接口,而Temporal接口继承了TemporalAccessor接口
    @Test
    public void testLocalDateTiem() {
    final DateTimeFormatter stdFormat = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
    Date date = new Date();
    LocalDateTime localDateTime1 =
    LocalDateTime.ofInstant(date.toInstant(), ZoneId.systemDefault());
    String result = stdFormat.format(localDateTime1);
    String format = localDateTime1.format(stdFormat);
    Assertions.assertThat(result).isEqualTo(format);
    }
  2. 当前时间/指定时间 的 前一天

    1
    2
    3

    LocalDateTime now = LocalDateTime.now();
    LocalDateTime yesterday = now.plusDays(-1);
  3. LocalDateTime 与 字符串类型 时间格式转换

    1
    2
    3
    4
    5
    String specailTiem="2021-07-26 15:26:26";
    DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
    DateTimeFormatter dateHourFormatter = DateTimeFormatter.ofPattern("yyyyMMddHH");
    LocalDateTime dateTime = LocalDateTime.parse(specailTiem, dateTimeFormatter);
    String dateTimeHour = dateTime.format(dateHourFormatter);
  • 版权声明: 本博客所有文章除特别声明外,著作权归作者所有。转载请注明出处!
  • Copyrights © 2022-2023 ligongzhao
  • 访问人数: | 浏览次数:

请我喝杯咖啡吧~

支付宝
微信