Delphi的DateTimeToUnix和UnixToDateTime转换时间时,在中国时间就差了8个小时,所以对它进行了一些改造。
type
time_t = Int64;
function DateTimeToUnix(ConvDate: TDateTime): time_t;
var
zi : TTimeZoneInformation;
begin
GetTimeZoneInformation(zi);
Result := Round((ConvDate - UnixDateDelta) * 86400) + 60*(zi.Bias + zi.DaylightBias);
end;
function UnixToDateTime(USec: time_t): TDateTime;
var
zi : TTimeZoneInformation;
begin
GetTimeZoneInformation(zi);
Result := ((USec - 60*zi.Bias) / 86400) + UnixDateDelta;
end;