ホームページ >Java >&#&チュートリアル >Java でインターネット タイム サーバーからグリニッジ標準時 (GMT) を取得するにはどうすればよいですか?

Java でインターネット タイム サーバーからグリニッジ標準時 (GMT) を取得するにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-11-20 00:58:02721ブラウズ

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

Java のインターネットタイムサーバーから時刻を取得する

この説明は、グリニッジ標準時 (GMT) に依存するのではなく、外部ソースから取得することを中心に説明します。ローカル システム上で。時刻同期サーバーは、このニーズに対するソリューションを提供します。

Java ベースのアプローチ

Java でタイム サーバーから時刻を取得するには、次のアプローチを検討してください。

JNTP ライブラリ (または類似のライブラリ) の使用1)

このタスクを容易にするために外部ライブラリが存在します。たとえば、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 でインターネット タイム サーバーからグリニッジ標準時 (GMT) を取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。