zoukankan      html  css  js  c++  java
  • Delphi 获取北京时间(通过百度和timedate网站)

    方法一:

    [delphi] view plaincopyprint?
     
    1. uses  
    2.    ComObj, DateUtils;  
    3.   
    4. function GetInternetTime: string;  
    5. var  
    6.   XmlHttp: OleVariant;  
    7.   datetxt: string;  
    8.   DateLst: TStringList;  
    9.   mon: string;  
    10.   timeGMT, GetNetTime: TDateTime;  
    11.   s: string;  
    12. begin  
    13.   XmlHttp := CreateOleObject('Microsoft.XMLHTTP');  
    14.   XmlHttp.Open('GET', 'http://open.baidu.com/special/time/', False);  
    15.   XmlHttp.Send;  
    16.   
    17.   datetxt := XmlHttp.GetResponseHeader('Date');   
    18.   datetxt := Copy(datetxt, Pos(',', datetxt) + 1, 100);  
    19.   datetxt := StringReplace(datetxt, 'GMT', '', []);  
    20.   datetxt := Trim(datetxt);  
    21.   if datetxt = '' then Exit;  
    22.   DateLst := TStringList.Create;  
    23.   while Pos(' ', datetxt) > do  
    24.   begin  
    25.     DateLst.Add(Copy(datetxt, 1, Pos(' ', datetxt) - 1));  
    26.     datetxt := Copy(datetxt, Pos(' ', datetxt) + 1, 100);  
    27.   end;  
    28.   DateLst.Add(datetxt);  
    29.   if DateLst[1] = 'Jan' then  
    30.     mon := '01'  
    31.   else if DateLst[1] = 'Feb' then  
    32.     mon := '02'  
    33.   else if DateLst[1] = 'Mar' then  
    34.     mon := '03'  
    35.   else if DateLst[1] = 'Apr' then  
    36.     mon := '04'  
    37.   else if DateLst[1] = 'Mar' then  
    38.     mon := '05'  
    39.   else if DateLst[1] = 'Jun' then  
    40.     mon := '06'  
    41.   else if DateLst[1] = 'Jul' then  
    42.     mon := '07'  
    43.   else if DateLst[1] = 'Aug' then  
    44.     mon := '08'  
    45.   else if DateLst[1] = 'Sep' then  
    46.     mon := '09'  
    47.   else if DateLst[1] = 'Oct' then  
    48.     mon := '10'  
    49.   else if DateLst[1] = 'Nov' then  
    50.     mon := '11'  
    51.   else if DateLst[1] = 'Dec' then  
    52.     mon := '12';  
    53.   s := DateLst[2] + '-' + mon + '-' + DateLst[0] + ' ' + DateLst[3];  
    54. //标准时间  
    55. //  ShowMessage(s);  
    56. // '/' or '-'  
    57.   timeGMT := StrToDateTime(DateLst[2] + '-' + mon + '-' + DateLst[0] + ' ' + DateLst[3]);  
    58.   //转换时区  
    59.   GetNetTime := IncHour(TimeGMT, 8);  
    60. //  ShowMessage(FormatDateTime('yyyy年mm月dd日 HH:NN:SS', GetNetTime));  
    61.   FreeAndNil(DateLst);  
    62.   Result:= FormatDateTime('yyyy年mm月dd日 HH:NN:SS', GetNetTime);  
    63. end;  

    方法二:

    [delphi] view plaincopyprint?
     
    1. procedure TForm1.FormCreate(Sender: TObject);  
    2. begin  
    3.   WebBrowser.Navigate('http://www.timedate.cn/worldclock/ti.asp');  
    4.   tmr1.Enabled := True;  
    5. end;  
    6.   
    7. procedure TForm1.WebBrowserStatusTextChange(Sender: TObject;  
    8.   const Text: WideString);  
    9. var  
    10.   strText: string;  
    11. begin  
    12.   strText := Text;  
    13.   if strText = '完成' Then  
    14.   begin  
    15.     Caption := WebBrowser.OleObject.Document.Body.Innertext;  
    16.     tmr1.Enabled := True  
    17.   end;  
    18. end;  
    19.   
    20. procedure TForm1.tmr1Timer(Sender: TObject);  
    21. begin  
    22.   tmr1.Enabled := False;  
    23.   WebBrowser.Refresh  
    24. end;  

    http://blog.csdn.net/yanjiaye520/article/details/7887463

  • 相关阅读:
    Android开发新手学习总结(六)——android开发目录结构【图文版】
    Android开发新手学习总结(一)——使用Android Studio搭建Android集成开发环境
    62个Android Studio小技巧合集
    Android Studio 入门指南
    Unity操作
    Unity的安装和破解
    pb数据窗口设置操作
    Roll A Ball
    c实现旋转数列
    用循环添加多行、多列视图
  • 原文地址:https://www.cnblogs.com/findumars/p/4999241.html
Copyright © 2011-2022 走看看