在 Java 中获取 BIOS 时间

发布于 2024-10-31 16:21:28 字数 230 浏览 3 评论 0 原文

Java 有没有办法获取 BIOS 日期和时间?

当您调用 java.util.Calendar.getInstance() 或 new java.util.Date( 时,Java 是否使用 BIOS(基本输入/输出系统)日期时间)?

我确实知道 Java 以某种方式使用 1970 年 1 月 1 日 00:00:00 GMT 作为基础来处理当前的日期和时间。

但具体如何呢?

Is there a way in Java to get the BIOS date and time?

Does Java use the BIOS (Basic Input/Output System) Datetime when you call java.util.Calendar.getInstance() or new java.util.Date()?

I do know that Java somehow works the current Date and time using January 1, 1970, 00:00:00 GMT as a base.

But how exactly?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

梦萦几度 2024-11-07 16:21:28

它询问操作系统,操作系统可能会也可能不会询问 BIOS。

这些日期基于该纪元,如下所示:

new Date(0); // == Thu Jan 01 01:00:00 GMT 1970

It asks the operating system, which may or may not ask the BIOS.

These dates are based on that epoch in this way:

new Date(0); // == Thu Jan 01 01:00:00 GMT 1970
属性 2024-11-07 16:21:28

有一些方法,但这些方法不可移植。一种方法是通过 hwclock /download.oracle.com/javase/6/docs/api/java/lang/Runtime.html" rel="noreferrer">Runtime.exec() 并解析 hwclock (Linux) 的输出。其他方法是使用 JNI 并进行系统调用。

There are ways, but these are not portable. One way is to call hwclock from your java program via Runtime.exec() and parse the output of hwclock (Linux). Other ways would be using the JNI and do a system call.

梦醒灬来后我 2024-11-07 16:21:28

这两者都使用 System.currentTimeMillis() 来从操作系统获取 GMT 时间。操作系统可能会从 BIOS 获取时间,但这取决于操作系统。

Both of these use System.currentTimeMillis() which obtains the GMT time from the OS. The OS may in turn get the time from the BIOS but that is up to the OS.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文