【发布时间】:2011-08-15 15:45:02
【问题描述】:
我从表(来自 IBSng 数据库)中捕获了 Firstlogin 字段的值。我知道这是Date,但我不知道如何将其转换为有效日期。
该字段的值为:1304077351
如何将其转换为有效的日期格式?
【问题讨论】:
-
什么语言和平台?
Firstlogin可能会为那些知道它的人识别语言,但对我们其他人来说毫无意义。请编辑问题以将语言添加到标签中。
我从表(来自 IBSng 数据库)中捕获了 Firstlogin 字段的值。我知道这是Date,但我不知道如何将其转换为有效日期。
该字段的值为:1304077351
如何将其转换为有效的日期格式?
【问题讨论】:
Firstlogin 可能会为那些知道它的人识别语言,但对我们其他人来说毫无意义。请编辑问题以将语言添加到标签中。
这是 2011 年 4 月 29 日星期五 11:42:31 GMT 的 unix timestamp。
编辑
根据IBS,它使用postgresql 作为其后端数据库。您应该可以使用to_timestamp 对其进行转换。
【讨论】:
我找到了!谢谢安德斯
function UnixToDateTime(USec: Longint): TDateTime;
const
// Sets UnixStartDate to TDateTime of 01/01/1970
UnixStartDate: TDateTime = 25569.0;
begin
Result := (USec / 86400) + UnixStartDate;
end;
【讨论】:
UnixToDateTime() 函数,在DateUtils 单位中:function UnixToDateTime(const AValue: Int64): TDateTime; 注意返回的TDateTime 是UTC,所以如果你需要它是本地时间,您必须使用本地机器的时区信息手动调整它。