如何获得 C# 中的 Unix 时间戳


Unix 时间戳主要用于 Unix 操作系统。但它对所有操作系统都有用,因为它表示所有时区的当前时间。

Unix 时间戳表示以秒为单位的时间。Unix 纪元开始于 1970 年 1 月 1 日。

因此,Unix 时间戳是特定日期和

示例

使用 DateTime.Now.Subtract().TotalSeconds 方法获取 Unix 时间戳

class Program{
   static void Main(string[] args){
      Int32 unixTimestamp = (Int32)(DateTime.Now.Subtract(new
      DateTime(1970, 1, 1))).TotalSeconds;
      Console.WriteLine("The Unix Timestamp is {0}", unixTimestamp);
      Console.ReadLine();
   }
}

输出

1596837896

示例

使用 DateTimeOffset.Now.ToUnixTimeSeconds() 方法获取 Unix 时间戳

class Program{
   static void Main(string[] args){
      var unixTimestamp = DateTimeOffset.Now.ToUnixTimeSeconds();
      Console.WriteLine("The Unix Timestamp is {0}.", unixTimestamp);
      Console.ReadLine();
   }
}

输出

1596819230.

示例

使用 TimeSpan 结构方法获取 Unix 时间戳

class Program{
   static void Main(string[] args){
      TimeSpan epochTicks = new TimeSpan(new DateTime(1970, 1, 1).Ticks);
      TimeSpan unixTicks = new TimeSpan(DateTime.Now.Ticks) - epochTicks;
      Int32 unixTimestamp = (Int32)unixTicks.TotalSeconds;
      Console.WriteLine("The Unix Timestamp is {0}.", unixTimestamp);
      Console.ReadLine();
   }
}

输出

1596839083

更新于: 2020-08-19

已查看 6 千+ 次

开启你的 职业生涯

完成课程,获得认证

开始学习
广告