zoukankan      html  css  js  c++  java
  • 日期 时区问题

    Date date = new Date();
    Instant instant = date.toInstant();
    assertEquals(date.getTime(), instant.toEpochMilli());
    
    ZoneId shZoneId = ZoneId.of("Asia/Shanghai");
    ZoneId cgZoneId = ZoneId.of("America/Chicago");
    
    LocalDateTime shLocalDateTime =  LocalDateTime.ofInstant(instant, shZoneId);
    LocalDateTime cgLocalDateTime = LocalDateTime.ofInstant(instant, cgZoneId);
    assertEquals(shLocalDateTime.getSecond(), cgLocalDateTime.getSecond());
    assertEquals(Math.abs(shLocalDateTime.getHour() - cgLocalDateTime.getHour()), 13);
    
    ZonedDateTime shZonedDateTime = ZonedDateTime.of(shLocalDateTime, shZoneId);
    ZonedDateTime cgZonedDateTime = ZonedDateTime.of(cgLocalDateTime, cgZoneId);
    assertEquals(shLocalDateTime.getSecond(), cgZonedDateTime.getSecond());
    
    DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
    String shDateTimeStr = dateTimeFormatter.format(shZonedDateTime);
    String cgDateTimeStr = dateTimeFormatter.format(cgZonedDateTime);
    assertFalse(shDateTimeStr.equals(cgDateTimeStr));
    

    不同时区获取的【毫秒数相等】的, 但是显【时间显示会有差异】!!!

  • 相关阅读:
    调试
    自定义缓冲函数
    缓冲
    如何控制动画
    开发中遇到过的坑
    动画控制属性
    自定义动画
    CATransition(过渡)
    动画基础(显式动画)
    呈现图层
  • 原文地址:https://www.cnblogs.com/mengjianzhou/p/13163795.html
Copyright © 2011-2022 走看看