2015-06-14 147 views
0

我有一个长整型变量至极containes秒自1970年1月1日的格式如下:转换长整型秒至双精度浮点值

long int seconds = 1231241242144214; 

我需要此秒转换为双精度浮点点值。值的整数部分是自1899年12月30日午夜以来的天数。 该值的小数部分表示时间。 .5等于中午12点。

我该如何转换?

+0

分而治之? –

+0

多么可怕的表示。它应该在一个很长的整数。转换时不保证精度。 – stark

+0

sry,我的错误 – mreoer

回答

2

86400秒在一天之间和25569天之间这些时代。所以答案是:

double DelphiDateTime = (UnixTime/86400.0) + 25569; 

你确实需要将Unix时间存储在一个整型变量中。

+0

@Baum Yah,我也意识到了。我也习惯在Delphi中编写代码!谢谢。 –