如何在 C# 中获取 Unix timestamp(Unix 时间戳)
大家好!我是一名 C# 初学者,在处理日期和时间时遇到了问题。我需要获取 Unix timestamp——自 1970 年 1 月 1 日(Unix 纪元)以来经过的秒数。这是为了与接受此格式时间的外部 API 集成。
我尝试过类似这样的代码:
```csharp
DateTime now = DateTime.Now;
long timestamp = (long)now; // 错误:无法隐式转换
```
但编译器报错,说无法将 DateTime 转换为 long。然后我尝试使用 Ticks 属性:
```csharp
long timestamp = DateTime.Now.Ticks;
```
但得到的值非常大(例如 638700000000000000),这显然不是 Unix timestamp。我知道 Ticks 是从公元 0001 年 1 月 1 日开始计算的,而不是 1970 年。
请告诉我如何在 C# 中正确获取 Unix timestamp?最好附带代码示例。我需要获取当前时刻以及任意日期的 Unix timestamp。提前感谢!
<<>>