阅读量:4
在C#中,获取时间戳的方法有以下几种:
- DateTime.UtcNow.Ticks:获取当前时间的Ticks(自公元0001年1月1日午夜(00:00:00)以来所经过的100纳秒间隔数),可以通过除以TimeSpan.TicksPerSecond来转换为秒级时间戳。
long timestamp = DateTime.UtcNow.Ticks / TimeSpan.TicksPerSecond; Console.WriteLine(timestamp);
- DateTimeOffset.UtcNow.ToUnixTimeSeconds():获取当前时间的秒级Unix时间戳。DateTimeOffset结构提供了对日期和时间的表示,包括时区信息。
long timestamp = DateTimeOffset.UtcNow.ToUnixTimeSeconds(); Console.WriteLine(timestamp);
- (long)(DateTime.UtcNow - new DateTime(1970, 1, 1)).TotalSeconds:通过计算当前时间与Unix纪元(1970年1月1日午夜(00:00:00))之间的时间间隔来获取秒级Unix时间戳。
long timestamp = (long)(DateTime.UtcNow - new DateTime(1970, 1, 1)).TotalSeconds; Console.WriteLine(timestamp);
以上是常用的几种获取时间戳的方法,可以根据需要选择适合的方法进行使用。