国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

從Internet時間服務器獲取標準格林尼治時間

2019-11-18 18:55:13
字體:
來源:轉載
供稿:網友

由于本機系統時間不準確,所以決定從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


上一篇:玩轉Windows桌面圖標

下一篇:最酷的程序員用KOL

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
學習交流
熱門圖片

新聞熱點

疑難解答

圖片精選

網友關注

主站蜘蛛池模板: 碌曲县| 辰溪县| 台南县| 唐海县| 白银市| 西乌| 临洮县| 甘肃省| 闽清县| 金华市| 梧州市| 清新县| 汝州市| 华安县| 海门市| 威信县| 平利县| 鞍山市| 抚顺市| 黑水县| 日土县| 浏阳市| 巨鹿县| 瑞丽市| 遂昌县| 台湾省| 沅陵县| 奉化市| 兴国县| 贵溪市| 太原市| 土默特左旗| 卢湾区| 广水市| 多伦县| 沙湾县| 肇州县| 佛山市| 兴安盟| 长白| 察隅县|