//GMT 时间格式转换到 TDateTime
//忽略时区
function GMT2DateTime(const pSour:PAnsiChar):TDateTime; function GetMonthDig(const Value:PAnsiChar):Integer;
const
MonthDig:array[..] of PAnsiChar =
(
'Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec'
);
var
Index:Integer;
begin
Result := ;
for Index := to do
begin
if AnsiStrIComp(Value,MonthDig[Index]) = then
begin
Result := Index;
Break;
end;
end;
end; var
A:array[..] of Ansichar;
P1,P2:PAnsiChar;
Len:Integer;
wDay,wMonth,wYear,wHour,wMinute,wSec:Word;
D:TDateTime;
begin
//P1 := ' Mon, 12 Aug 2013 16:20:35 GMT';
Result := ;
P1 := pSour;
P2 := @A[];
Len := ;
while((Len > ) and (P1^ <>#)) do
begin
P2^ := P1^;
Inc(P1);
Inc(p2);
Dec(Len);
end;
P2^ := #; P1 := @A[];
while((P1^<>',') and (P1^ <>#)) do Inc(P1);Inc(p1); //
while((P1^ <> #) and (P1^ <>#)) do Inc(P1);Inc(p1);P2 := P1;
while((P2^ <> #) and (P2^ <>#)) do Inc(P2); P2^ := #;
wDay := StrToIntDef(P1,-); //Aug
P1 := P2; Inc(P1);P2 := P1;
while( (P2^<>#) and (P2^ <>#)) do Inc(P2);P2^ := #;
wMonth := GetMonthDig(P1);
if wMonth = then
Exit; //
P1 := P2; Inc(P1);P2 := P1;
while( (P2^<>#) and (P2^ <>#) ) do Inc(P2);P2^ := #;
wYear := StrToIntDef(P1,-);
if wYear = then
Exit; //Hour
P1 := P2; Inc(P1);P2 := P1;
while((P2^<>':') and (P2^ <>#)) do Inc(P2);P2^ := #;
wHour := StrToIntDef(P1,-);
if wHour < then
Exit; //Min
P1 := P2; Inc(P1);P2 := P1;
while((P2^<>':') and (P2^ <>#)) do Inc(P2);P2^ := #;
wMinute := StrToIntDef(P1,-);
if wMinute < then
Exit; //Sec
P1 := P2; Inc(P1);P2 := P1;
while((P2^<>#) and (P2^ <>#)) do Inc(P2);P2^ := #;
wSec := StrToIntDef(P1,-);
if wSec < then
Exit; Result := EnCodeDateTime(wYear,wMonth,wDay,wHour,wMinute,wSec,); end;

TDateTime 转换成 GMT 时间格式

 function DateTimeToGMT(const ADate:TDateTime):string;
const
WEEK:array[..] of PChar = ('Sun','Mon','Tues','Wed','Thur','Fri','Sat');
MonthDig:array[..] of PChar =
('Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec'); var
wWeek,wYear,wMonth,wDay,wHour,wMin,wSec,wMilliSec:Word;
A:array[..] of AnsiChar;
P1,P2:PAnsiChar;
sWeek,sMonth:string;
begin
DecodeDateTime(ADate,wYear,wMonth,wDay,wHour,wMin,wSec,wMilliSec);
wWeek := DayOfWeek(ADate);
sWeek := WEEK[wWeek];
sMonth := MonthDig[wMonth];
Result := Format(' %s, %d %s %d %d:%d:%d GMT',[sWeek,wDay,sMonth,wYear,wHour,wMin,wSec]);
end;

GMT 时间格式转换到 TDateTime (Delphi)的更多相关文章

  1. 问题:Oracle to_date;结果:oracle常用的时间格式转换

    oracle常用的时间格式转换 1:取得当前日期是本月的第几周 SQL> select to_char(sysdate,'YYYYMMDD W HH24:MI:SS') from dual; T ...

  2. scala 时间,时间格式转换

    scala 时间,时间格式转换 1.scala 时间格式转换(String.Long.Date) 1.1时间字符类型转Date类型 1.2Long类型转字符类型 1.3时间字符类型转Long类型 2. ...

  3. moment.js 时间格式转换

    moment.js 时间格式转换 moment.js 时间转化 bug 格式错误 bug 02:00 => 14:00 format HH 与 hh HH === 24 小时制 hh === 1 ...

  4. SQL Server日期时间格式转换字符串详解 (详询请加qq:2085920154)

    在SQL Server数据库中,SQL Server日期时间格式转换字符串可以改变SQL Server日期和时间的格式,是每个SQL数据库用户都应该掌握的.本文我们主要就介绍一下SQL Server日 ...

  5. SQL Server日期时间格式转换字符串

    在SQL Server数据库中,SQL Server日期时间格式转换字符串可以改变SQL Server日期和时间的格式,是每个SQL数据库用户都应该掌握的.本文我们主要就介绍一下SQL Server日 ...

  6. MySQL时间戳和时间格式转换函数

    MySQL时间戳和时间格式转换函数:unix_timestamp and from_unixtime unix_timestamp将时间转化成时间戳格式.from_unixtime将时间戳转化成时间格 ...

  7. Sql日期时间格式转换;取年 月 日,函数:DateName()、DATEPART()

    一.sql server2000中使用convert来取得datetime数据类型样式(全) 日期数据格式的处理,两个示例: CONVERT(varchar(16), 时间一, 20) 结果:2007 ...

  8. SQL Server日期时间格式转换字符串详解

    本文我们主要介绍了SQL Server日期时间格式转换字符串的相关知识,并给出了大量实例对其各个参数进行对比说明,希望能够对您有所帮助. 在SQL Server数据库中,SQL Server日期时间格 ...

  9. sql 日期时间格式转换

    Sql日期时间格式转换   sql server2000中使用convert来取得datetime数据类型样式(全) 日期数据格式的处理,两个示例: CONVERT(varchar(16), 时间一, ...

随机推荐

  1. poj 3107 删点最大分支最小

    http://poj.org/problem?id=3107 这实际上就是找重心,在之前有做过:http://www.cnblogs.com/qlky/p/5780933.html #include ...

  2. Android自定义控件 -- 带边框的TextView

    使用xml实现边框 原来使用带边框的TextView时一般都是用XML定义来完成,在drawable目录中定义如下所示的xml文件: <?xml version="1.0" ...

  3. struts2 中使用DMI(动态调用方法)方式配置action

    1.使用 "!"方式,即 action名称 ! 方法名称 struts.xml 配置 <package name="user" namespace=&qu ...

  4. django orm 多对多自定义第三张表

    # -*- coding: utf-8 -*-# Generated by Django 1.11.11 on 2018-09-02 08:07from __future__ import unico ...

  5. ansible使用3-playbook

    playbook是ansible用于配置部署的语言.使用YAML格式. 示例 --- - hosts: webservers vars: http_port: 80 max_clients: 200 ...

  6. centos6.5_64bit_tomcat日志合并在一个.log下

    问题   tomcat每次启动时,自动在logs目录下生产以下日志文件,且每天都会生成对应日期的一个文件,造成日志文件众多:   目的        Tomcat以上日志都输出到同一个文件中.   修 ...

  7. 笨办法学Python(二)

    习题 2: 注释和井号 程序里的注释是很重要的.它们可以用自然语言告诉你某段代码的功能是什么.在你想要临时移除一段代码时,你还可以用注解的方式将这段代码临时禁用.接下来的练习将让你学会注释: #-- ...

  8. [转载]开启debug调试模式

    debug+trace模式可以查看开发过程中TP的错误信息,可以更好地帮助开发者debug.但是debug模式的开启还不是简单的在配置文件中中设置就可以的,经过查资料摸索,找到一种有效的方法. 首先在 ...

  9. Codeforces 758D Ability To Convert(区间DP)

    题目链接:http://codeforces.com/problemset/problem/758/D 题意:一个n进制下的数k,其中k不会用字母,如果有A就用10代替了.求k这个数对应的,在10进制 ...

  10. 【转】Activity生命周期详解

    三个循环 提供两个关于Activity的生命周期模型图示帮助理解:                                           图1 图2 从图2所示的Activity生命周期 ...