从Internet时间服务器获取标准格林尼治时间

原创 2001年05月16日 11:59:00

Internet时间服务器获取标准格林尼治时间<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

 

由于本机系统时间不准确,所以决定从Internet 时间服务器获取标准时间来校正  系统时间,说干就干。

程序设计步骤如下:

1、  新建一个工程;

2、  在窗体上放一个TEdit控件和一个TClientSocket(在Internet页下)控件。TEdit用来显示取得的格林尼治时间转化成北京时间后的时间,TClientSocket用来从Internet 时间服务器获取标准的格林尼治时间;

3、  程序代码如下:

procedure TForm1.FormCreate(Sender: TObject);

begin

  ClientSocket1.Host :='tick.usno.navy.mil';  // 美国海军天文台;

  ClientSocket1.Port :=13;

  ClientSocket1.Open;

end;

 

procedure TForm1.ClientSocket1Read(Sender: TObject;

  Socket: TCustomWinSocket);

var

  TempTime: TDateTime;

  hh,mm,ss,ms: word;

  sTime : string;

begin

  sTime := Socket.ReceiveText;    // 取得格林尼治时间;

  sTime:=Copy(sTime,12,8);      // 取得时间部分;

  DecodeTime(StrToTime(sTime),hh,mm,ss,ms); 

  hh:=(hh+8) mod 24;           // 转化成北京时间;

  TempTime:=EncodeTime(hh,mm,ss,ms);

  Edit1.Text :=TimeToStr(TempTime);

end;

  

4、  编译运行,稍微等几秒钟(和你的网络速度有关,笔者等了大概一秒钟),TEdit控件就显示出了由格林尼治时间转化得到的北京时间。

 

     怎么样?很简单吧。赶快试一下吧!需要说明一点:由于网络延时的缘故,这

 个程序得到的时间会和标准时间有几秒的误差,但除非你用来控制火箭的发射,否

  则,这无妨大碍。

笔者是从美国海军天文台得到标准时间,你还可以从别的时间服务器上获间,但由于每个时间服务器的时间格式不同,所以在编写程序时要注意作相应的处理。

   域名                                组织

Clock.sgi.com                       SGI

Tick.mit.edu                   麻省理工学院

Time.nist.gov                        NIST

 

获取当前格林威治时间

public static void main(String[] args) throws ParseException { /*利用joda-time*/ // 获取...
  • gdn_wolf
  • gdn_wolf
  • 2017年03月13日 15:54
  • 1435

Java中得到GMT 时间(格林时间)

GMT 时间(格林时间) 即中央时区时间,北京时间是在东八区,所以北京时间= 格林时间+8小时.   java中得到GMT时间的大代码片段如下: Calendar cd = Calendar....
  • To_Utopia
  • To_Utopia
  • 2012年11月02日 08:53
  • 16466

从Internet时间服务器获取标准格林尼治时间

从Internet时间服务器获取标准格林尼治时间 由于本机系统时间不准确,所以决定从Internet 时间服务器获取标准时间来校正  系统时间,说干就干。程序设计步骤如下:1、  新建一个工程;2、 ...
  • Apollo47
  • Apollo47
  • 2001年05月16日 11:59
  • 3806

java获取标准格林尼治时间

  • 2010年08月09日 16:06
  • 2KB
  • 下载

从Internet时间服务器获取标准格林尼治时间

  • zgqtxwd
  • zgqtxwd
  • 2008年04月30日 22:11
  • 221

Internet时间同步服务器实现

时间服务是即是网络对时,由服务器将准确时间传给客户端,常用的有以下四种。 时间协议 方式 相关标准 数据格式 通信端口 时间协议(Time Protocol) RFC...
  • yuanfengyun
  • yuanfengyun
  • 2012年09月09日 21:55
  • 552

Windows下C/C++获取当前系统时间

Windows下C/C++获取当前系统时间 分类: C/C++ 2014-06-25 16:50 214人阅读 评论(0) 收藏 举报 c++windows时间 目录(?)[+] 【原...
  • haiross
  • haiross
  • 2015年04月28日 10:50
  • 23388

Windows下C/C++获取当前系统时间

Windows下CC获取当前系统时间方案一localtime 优点仅使用C标准库缺点只能精确到秒级 方案二GetLocalTime sys   优点能精确到毫秒级缺点使用了windows...
  • Qsir
  • Qsir
  • 2017年05月31日 12:19
  • 1801

Windows Server时间服务器配置方法

1 时间服务器经常会碰到客户端机器需要和服务器在时间上保持同步,否则会出现各种问题,特别是有时间相关的触发功能的时候。  为解决各设备间时间统一的问题,我们可在网络中设置一台服务器使其作为基准时...
  • superch0054
  • superch0054
  • 2013年08月27日 16:47
  • 20880

本机时间自动与Internet时间服务器同步出错怎么办?

对于网站开发者来说,经常需要往服务器上上传文件,那么免不了比较哪里的文件较新了。而有些电脑在双击右下角时间打开面板时,往往又出现自动与Internet时间服务器同步出错?系统默认提供了两个服务器,但是...
  • wzwjr
  • wzwjr
  • 2008年10月06日 11:09
  • 2047
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:从Internet时间服务器获取标准格林尼治时间
举报原因:
原因补充:

(最多只允许输入30个字)