gpt4 book ai didi

java - 如何使用 Java 找到从午夜经过的秒数?

转载 作者:IT老高 更新时间:2023-10-28 21:09:53 24 4
gpt4 key购买 nike

我需要一个函数来告诉我从午夜过去了多少秒。我目前正在使用 System.currentTimeMillis() 但它给了我类似 UNIX 的时间戳。

如果我也能得到毫秒,那对我来说将是一个奖励。

最佳答案

如果您使用 Java >= 8,这很容易做到:

ZonedDateTime nowZoned = ZonedDateTime.now();
Instant midnight = nowZoned.toLocalDate().atStartOfDay(nowZoned.getZone()).toInstant();
Duration duration = Duration.between(midnight, Instant.now());
long seconds = duration.getSeconds();

如果您使用的是 Java 7 或更低版本,则必须通过日历获取从午夜开始的日期,然后进行减法。

Calendar c = Calendar.getInstance();
long now = c.getTimeInMillis();
c.set(Calendar.HOUR_OF_DAY, 0);
c.set(Calendar.MINUTE, 0);
c.set(Calendar.SECOND, 0);
c.set(Calendar.MILLISECOND, 0);
long passed = now - c.getTimeInMillis();
long secondsPassed = passed / 1000;

关于java - 如何使用 Java 找到从午夜经过的秒数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4389500/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com