c#获取当前时间戳(正确版)

2019-03-14  本文已影响0人  AI视客

网上给出的方法一般是这样:

/// <summary>
        /// 获取时间戳
        /// </summary>
        /// <returns></returns>
        public string GetTimeStamp()
        {
            TimeSpan ts = DateTime.Now - new DateTime(1970, 1, 1, 0, 0, 0, 0);
            return Convert.ToInt64(ts.TotalSeconds).ToString();
        }

或者

/// <summary>
        /// 获取时间戳
        /// </summary>
        /// <returns></returns>
        public static string GetTimeStamp()
        {
            TimeSpan ts = DateTime.UtcNow - new DateTime(1970, 1, 1, 0, 0, 0, 0);
            return Convert.ToInt64(ts.TotalMilliseconds).ToString();
        }

实际上获得的时间是有偏差的,后来我在StackOverflow上查到一个方法:

new DateTimeOffset(DateTime.UtcNow).ToUnixTimeSeconds();

这样获取的时间才是正确的,还是StackOverflow强大!

上一篇 下一篇

猜你喜欢

热点阅读