你如何在 C# 中转换纪元时间? [英] How do you convert epoch time in C#?

查看:17
本文介绍了你如何在 C# 中转换纪元时间?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何在 C# 中将 Unix 纪元时间 转换为实时?(纪元开始于 1/1/1970)

How do you convert Unix epoch time into real time in C#? (Epoch beginning 1/1/1970)

推荐答案

UPDATE 2020

你可以用 DateTimeOffset 来做到这一点

You can do this with DateTimeOffset

DateTimeOffset dateTimeOffset = DateTimeOffset.FromUnixTimeSeconds(epochSeconds);
DateTimeOffset dateTimeOffset2 = DateTimeOffset.FromUnixTimeMilliseconds(epochMilliseconds);

如果你需要 DateTime 对象而不是 DateTimeOffset,那么你可以调用 DateTime 属性

And if you need the DateTime object instead of DateTimeOffset, then you can call the DateTime property

DateTime dateTime = dateTimeOffset.DateTime;


原答案

我想你的意思是 Unix 时间,它被定义为自午夜以来的秒数(UTC) 1970 年 1 月 1 日.


Original answer

I presume that you mean Unix time, which is defined as the number of seconds since midnight (UTC) on 1st January 1970.

private static readonly DateTime epoch = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc);

public static DateTime FromUnixTime(long unixTime)
{
    return epoch.AddSeconds(unixTime);
}

这篇关于你如何在 C# 中转换纪元时间?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆