在C#中,可以使用以下方法获取Unix时间戳:
DateTimeOffset unixStart = new DateTimeOffset(1970, 1, 1, 0, 0, 0, TimeSpan.Zero);
TimeSpan unixTimeSpan = DateTimeOffset.UtcNow - unixStart;
long unixTimestamp = (long)unixTimeSpan.TotalSeconds;
在上述代码中,首先创建了一个DateTimeOffset
对象,表示Unix时间戳的起始时间(1970年1月1日),并指定为UTC时间。然后,通过计算当前时间与起始时间之间的时间间隔,得到一个TimeSpan
对象。最后,通过TotalSeconds
属性将时间间隔转换为秒数,并将其转换为长整型,即为Unix时间戳。
另外,如果你希望获取的是毫秒级的Unix时间戳,可以将最后一行的代码修改为:
long unixTimestamp = (long)unixTimeSpan.TotalMilliseconds;
这样就可以获取毫秒级的Unix时间戳了。