频道分类

Delphi 世界时间转换

作者:admin 来源: 日期:2020/5/14 15:16:05 人气: 标签:

 
在网页上经常使用世界时间,但是往往 本地使用的时候,都要转成本地时间 和 时间类型的。这样就很好地可以把网页或网站上的世界时间同步到本地来。


世界时间转换,如:    Sun, 10 May 2020 21:49:45 GMT
在 IdGlobalProtocols 单元有一个函数 ,GMTToLocalDateTime 它可以转换 TDateTime 时间类型。
使用方法

procedure TForm1.Button1Click(Sender: TObject);
var
  t: TDateTime;
begin
  t:= GMTToLocalDateTime('Sun, 10 May 2020 21:49:45 GMT');
  Showmessage( FormatDateTime('yyyy-mm-dd hh:nn:ss', t)  );
end;

那么怎样使用时间类型转换成 世界时呢 ,函数如下,它可以把 时间类型TDateTime转成世界时字符串

function DateTimeToGMT(const ADate:TDateTime):string;
const
  cWeek :array[1..7] of PWideChar = ('Sun','Mon','Tue','Wed','Thu','Fri','Sat');
  cMonth:array[1..12]of PWideChar = ('Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec');
var
  AYear, AMonth, ADay, AHour, AMinute, ASecond, AMilliSecond: Word;
  Idx: Byte;
begin
  System.DateUtils.DecodeDateTime(ADate, AYear, AMonth, ADay, AHour, AMinute, ASecond, AMilliSecond);
  Idx := DayOfWeek(ADate);
  //世界时间格式:  星期, 日期 月份 年 时:分:秒 GTM
  Result := Format('%s, %.2d %s %d %.2d:%.2d:%.2d GMT',[cWeek[Idx], ADay, cMonth[AMonth], AYear, AHour, AMinute, ASecond]);
end;

使用方法:
 Showmessage(  DateTimeToGMT(Now())  );

来源:http://www.delphifmx.com/node/63

上一篇:Delphi Fmx 绘制非常精确的 时分秒针下一篇:没有资料