您现在的位置是:首页>后端开发后端开发

C#DateTime时间格式与时间戳相互转换

胡小浪2019-09-25【后端开发】1057人已围观

简介C#里DateTime 时间格式和时间戳

/// <summary>

        /// DateTime时间格式转换为13位带毫秒的Unix时间戳

        /// </summary>

        /// <param name="time"> DateTime时间格式</param>

        /// <returns>Unix时间戳格式</returns>

        public static long ConvertDateTimeLong(System.DateTime time)

        {

            System.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1));

            return (long)(time - startTime).TotalMilliseconds;

        }


//=========================================

        /// <summary>

        /// DateTime时间格式转换为10位不带毫秒的Unix时间戳

        /// </summary>

        /// <param name="time"> DateTime时间格式</param>

        /// <returns>Unix时间戳格式</returns>

        public static int ConvertDateTimeInt(System.DateTime time)

        {

            System.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1));

            return (int)(time - startTime).TotalSeconds;

        }

//========================================

/// <summary>

        /// 时间戳转为C#格式时间

        /// </summary>

        /// <param name="timeStamp">Unix时间戳格式</param>

        /// <returns>C#格式时间</returns>

        public static DateTime GetTime(string timeStamp)

        {

            DateTime dtStart = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1));

            long lTime = long.Parse(timeStamp + "0000000");

            TimeSpan toNow = new TimeSpan(lTime);

            return dtStart.Add(toNow);

        }


Tags: C#DateTime时间戳

扫一扫分享本页

很赞哦! (1)