【问题标题】:C# convert date to unix timestampC# 将日期转换为 unix 时间戳
【发布时间】:2015-11-16 11:14:33
【问题描述】:

我有这种日期格式16 nov 02:12 我想将其转换为 unix 时间戳,但这对我来说看起来很复杂。我希望有简单的方法可以做到这一点?

【问题讨论】:

  • 你有两个问题。第一个是“将这种奇怪的格式转换为 DateTime”,然后是“将 DateTime 转换为 unix 时间戳”。后者已经得到解答,如果您需要前者的帮助,请阅读How to Ask 并展示您的尝试。

标签: c# date unix-timestamp


【解决方案1】:

请试试这个代码:

   public static double DateTimeToUnixTimestamp(DateTime dateTime)

    {
       return (TimeZoneInfo.ConvertTimeToUtc(dateTime) - new DateTime(1970, 1, 1)).TotalSeconds;
    }

【讨论】:

  • 为什么要将日期转换为 UTC? 1/1/1970 应转换为 UTC,而不是日期时间。您仍然会得到相同的结果,但转换我的方式更正确。
  • @jdweng 你能解释一下为什么你的方法更正确吗?
  • unix 时间 1,1,1970 是 UTC 时间。在发布的代码中,1970 年 1 月 1 日是当地时间,具体时间会因时区而异。
猜你喜欢
  • 2019-04-24
  • 2020-10-19
  • 2020-12-23
  • 2016-04-24
  • 2012-07-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多