首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >毫秒到LocalDateTime

毫秒到LocalDateTime
EN

Stack Overflow用户
提问于 2016-03-23 05:24:18
回答 2查看 6.1K关注 0票数 5

如何将long毫秒转换为LocalDateTime

我有一个旧代码,它使用日历执行一些操作,我希望将结果毫秒转换为LocalDateTime。

代码语言:javascript
复制
final Calendar aMinuteAgo = Calendar.getInstance();
aMinuteAgo.add(Calendar.MINUTE, -1);
//Convert aMinuteAgo.getTimeInMillis() to LocalDateTime
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-03-23 05:45:46

Calendar可以转换为LocalDateTime。下面是示例代码导入java.time.LocalDateTime;导入java.time.ZoneId;导入java.util.Calendar;

代码语言:javascript
复制
public class LDTTest {
    public static void main(String[] args) {
        final Calendar aMinuteAgo = Calendar.getInstance();
        aMinuteAgo.add(Calendar.MINUTE, -1);
        System.out.println(aMinuteAgo.getTime());
        LocalDateTime ofInstant = LocalDateTime.ofInstant(aMinuteAgo.toInstant(), ZoneId.systemDefault());
        System.out.println(ofInstant);

    }
}
票数 0
EN

Stack Overflow用户

发布于 2016-03-23 05:46:16

代码语言:javascript
复制
LocalDateTime ofInstant = LocalDateTime.ofInstant(aMinuteAgo.toInstant(),ZoneId.systemDefault());

如果您不想使用默认的zoneId,请使用此代码(可选)获取可用时区。

代码语言:javascript
复制
    public class Main {
      public static void main(String[] args) {
        Set<String> allZones = ZoneId.getAvailableZoneIds();
        List<String> zoneList = new ArrayList<String>(allZones);
        Collections.sort(zoneList);

        LocalDateTime dt = LocalDateTime.now();
        for (String s : zoneList) {
          ZoneId zone = ZoneId.of(s);
          ZonedDateTime zdt = dt.atZone(zone);
          ZoneOffset offset = zdt.getOffset();
          String out = String.format("%35s %10s%n", zone, offset);
          System.out.println(out);
        }
      }
}

用一个代码代替ZoneId.systemDefault()

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36170416

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档