首先让我感谢大家的帮助。
我需要的是一个函数,它接收一个 EPOCH 时间戳,如 1452.235687 并将其转换为一个可读的时间戳,如“01-01-1970 00:00:00”。更具体地说,我只需要时间而不是日期。
如果可能的话,我更喜欢 .NET 函数而不是 SQL 存储过程。但是,SQL 存储过程也可以正常工作。
再次感谢你,
double EpochSeconds = 1272672608.55;
DateTime time = new DateTime(1970, 1, 1).AddSeconds(EpochSeconds);
Console.WriteLine(time);
打印出来:
5/1/2010 12:10:08 AM
如果你只是想要时间,你可以使用time.TimeOfDay
.
您可以使用 UNIX 纪元 (1970-01-01) 创建一个 DateTime 对象并使用该AddSeconds
方法。
PowerShell 演示:
PS Home:> $e = [datetime]"1970-01-01"
PS Home:> $e.AddSeconds(1452.235687).TimeOfDay
Days : 0
Hours : 0
Minutes : 24
Seconds : 12
Milliseconds : 236
Ticks : 14522360000
TotalDays : 0,016808287037037
TotalHours : 0,403398888888889
TotalMinutes : 24,2039333333333
TotalSeconds : 1452,236
TotalMilliseconds : 1452236