首頁 > Java > java教程 > 主體

如何使用 Java 從 Internet 時間伺服器擷取格林威治標準時間 (GMT)?

Patricia Arquette
發布: 2024-11-20 00:58:02
原創
665 人瀏覽過

How Can I Retrieve Greenwich Mean Time (GMT) from Internet Time Servers in Java?

從Java 中的Internet 時間伺服器擷取時間

本討論的重點是從外部來源取得格林威治標準時間(GMT) ,而不是依賴在本機系統上。時間同步伺服器為這項需求提供了解決方案。

基於Java 的方法

要從Java 時間伺服器擷取時間,請考慮以下方法:

使用JNTP 函式庫(或類似的庫)一)

存在外部函式庫來促進此任務。例如,JNTP 提供了用於存取時間伺服器的簡單介面。

建立與時間伺服器的連線

選擇庫後,建立與時間伺服器的連接使用該庫的方法所需的時間伺服器。下面的程式碼使用 JNTP 庫示範了這一點:

import org.jnbt.NTPUDPClient;
import org.jnbt.TimeInfo;
import java.net.InetAddress;

String TIME_SERVER = "time-a.nist.gov";
NTPUDPClient timeClient = new NTPUDPClient();
InetAddress inetAddress = InetAddress.getByName(TIME_SERVER);
登入後複製

檢索時間

根據您使用的庫,檢索時間的方法可能會有所不同。使用 JNTP,您可以像這樣取得伺服器的時間:

TimeInfo timeInfo = timeClient.getTime(inetAddress);
long returnTime = timeInfo.getMessage().getTransmitTimeStamp().getTime();
Date time = new Date(returnTime);
登入後複製

請記住,使用 timeInfo.getReturnTime() 將傳回目前系統時間,而不是接收到的時間。相反,使用 timeInfo.getMessage().getTransmitTimeStamp().getTime().

以上是如何使用 Java 從 Internet 時間伺服器擷取格林威治標準時間 (GMT)?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板