c# - 如何将自1970年1月1日以来的秒数转换为日期时间值?

标签 c#

我有一个数字,它是自1970年1月1日以来的秒数。它是用以下方法创建的:

 var utcNow = (int) Math.Truncate(DateTime.UtcNow.Subtract(new DateTime(1970, 1, 1)).TotalSeconds);


现在需要将该数字转换为字符串形式的日期,如下所示:

Tue, Jan 15, 2019


有人可以给我一些有关如何做到这一点的建议。我想自己可以格式化它,但是我需要一个有关如何首先将整数utcNow转换为日期时间的建议。

最佳答案

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


您也可以反向使用:

var seconds = (time - epoch).TotalSeconds;


(给出double,但您可以将其强制转换为intlong等)

关于c# - 如何将自1970年1月1日以来的秒数转换为日期时间值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54196663/

相关文章:

c# - 如何将输出重定向保存到文件?

c# - 在数据库中存储关键字的最佳方法是什么,与语言无关

c# - ServiceStack:解析未知类型的服务

C# mysql读取int32奇怪的行为

c# - 如何将 EventListener 附加到另一个进程中的 EventSource?

c# - 使用参数和只放置一个变量然后转换它有什么区别

c# - 我应该创建 DTO 以从 put 方法中的对象中删除 id 吗?

c# - 获取chrome的控制台日志

c# - 为什么我不能在我的结构中初始化我的字段?

c# - 使用 StreamReader.ReadLine 读取具有特定 NewLine 字符序列的行