Java中可以使用System.currentTimeMillis()
方法获取当前时间的毫秒数,而Unix纪元是指1970年1月1日00:00:00 UTC时间。要将毫秒数转换为Unix纪元,可以使用以下代码:
long currentTimeMillis = System.currentTimeMillis();
long unixEpoch = currentTimeMillis / 1000;
这里将当前时间的毫秒数除以1000,得到的结果即为Unix纪元的秒数。
Java中还提供了java.time
包,可以更方便地处理日期和时间。使用java.time.Instant
类可以获取当前时间的Unix纪元秒数,示例如下:
import java.time.Instant;
public class Main {
public static void main(String[] args) {
Instant instant = Instant.now();
long unixEpoch = instant.getEpochSecond();
System.out.println(unixEpoch);
}
}
以上代码会输出当前时间的Unix纪元秒数。
Java的微秒级别的时间获取相对较为复杂,可以使用java.time.Clock
类的instant()
方法获取当前时间的Instant
对象,然后使用java.time.Duration
类的toNanos()
方法将纳秒数转换为微秒数,示例如下:
import java.time.Clock;
import java.time.Duration;
public class Main {
public static void main(String[] args) {
Clock clock = Clock.systemUTC();
Instant instant = clock.instant();
long micros = Duration.between(Instant.EPOCH, instant).toNanos() / 1000;
System.out.println(micros);
}
}
以上代码会输出当前时间的微秒数。
对于Java中的微秒级别时间获取,腾讯云提供了云原生数据库 TDSQL-C,它是一种高性能、高可用、弹性伸缩的云原生数据库产品,支持MySQL和PostgreSQL引擎。TDSQL-C可以满足对于微秒级别时间获取的需求,具体产品介绍和使用方法可以参考腾讯云官方文档:TDSQL-C产品介绍。
领取专属 10元无门槛券
手把手带您无忧上云