• C# 时间戳与DateTime互转,使用 DateTimeOffset


        /// <summary>
        /// 时间戳与DateTime互转
        /// </summary>
        public class TicksTimeConvert
        {
            /*
             * 时间戳10位的是秒,13位的是毫秒
             * 
             * 1秒=1000毫秒
             * 1毫秒=1000微秒
             * 1微秒=1000纳秒,纳秒也叫毫微秒
             * 
             * DateTime.Ticks的单位是100纳秒,
             * 每个计时周期表示一百纳秒,即一千万分之一秒。
             * 此属性的值表示自 0001 年 1 月 1 日午夜 12:00:00(表示 DateTime.MinValue)以来经过的以 100 纳秒为间隔的间隔数。
             * **/
    
    
            
    
            #region 本地时间
    
    
            /// <summary>
            /// 获取当前本地时间
            /// </summary>
            /// <returns></returns>
            public static DateTime GetNowLocalTime()
            {
                return DateTime.Now;
                //return DateTimeOffset.Now.DateTime;
            }
    
            
    
            #endregion
    
    
            #region UTC时间
            
    
            /// <summary>
            /// 获取当前UTC时间
            /// </summary>
            /// <returns></returns>
            public static DateTime GetNowUTCTime()
            {
                return DateTime.UtcNow;
                //return DateTimeOffset.UtcNow.UtcDateTime;
            }
    
            /// <summary>
            /// 获取当前UTC时间戳
            /// </summary>
            /// <returns>当前UTC时间戳,毫秒,13位</returns>
            public static long GetNowUTCTicks()
            {
                //DateTimeOffset.UtcNow.ToUnixTimeSeconds() //秒,10位
                return DateTimeOffset.UtcNow.ToUnixTimeMilliseconds();//毫秒,13位
            }
    
            /// <summary>
            /// UTC时间转UTC时间戳
            /// </summary>
            /// <param name="UTCTime"> UTC时间</param>
            /// <returns>UTC时间戳,毫秒,13位</returns>
            public static long UTCTime2UTCTicks(DateTime UTCTime)
            {
                return (new DateTimeOffset(UTCTime)).ToUnixTimeMilliseconds();
            }
    
            /// <summary>
            /// UTC时间戳转UTC时间
            /// </summary>
            /// <param name="UTCTicks">UTC时间戳,毫秒,13位</param>
            /// <returns>UTC时间</returns>
            public static DateTime UTCTicks2UTCTime(long UTCTicks)
            {
                return DateTimeOffset.FromUnixTimeMilliseconds(UTCTicks).UtcDateTime;
            }
    
            #endregion
    
    
            #region 本地和UTC 时间、时间戳互转
            /// <summary>
            /// UTC时间转本地时间
            /// </summary>
            /// <param name="dt">UTC时间</param>
            /// <returns>本地时间</returns>
            public static DateTime UTCTime2LocalTime(DateTime UTCTime)
            {
                return TimeZone.CurrentTimeZone.ToLocalTime(UTCTime);
            }
    
            /// <summary>
            /// 本地时间转UTC时间
            /// </summary>
            /// <param name="dt">本地时间</param>
            /// <returns>UTC时间</returns>
            public static DateTime LocalTime2UTCTime(DateTime LocalTime)
            {
                return LocalTime.ToUniversalTime();
            }
    
    
            /// <summary>
            /// 本地时间转UTC时间戳
            /// </summary>
            /// <param name="LocalTime">本地时间</param>
            /// <returns>UTC时间戳,毫秒</returns>
            public static long LocalTime2UTCTicks(DateTime LocalTime)
            {
                return UTCTime2UTCTicks(LocalTime2UTCTime(LocalTime));
            }
    
            /// <summary>
            /// UTC时间戳转本地时间
            /// </summary>
            /// <param name="UTCTicks">UTC时间戳,毫秒</param>
            /// <returns>本地时间</returns>
            public static DateTime UTCTicks2LocalTime(long UTCTicks)
            {
                return UTCTime2LocalTime(UTCTicks2UTCTime(UTCTicks));
            }
    
    
            #endregion
    
    
        }
  • 相关阅读:
    PeerJS
    OpenEMM 2013 发布,电子邮件营销软件
    feh 2.9 发布,图像查看器
    PyPyODBC 0.9.2发布 纯Python实现的pyodbc替代库
    MariaDB 5.5.29, 5.3.12, 5.2.14, 5.1.67
    CouchDB 1.3.0的新特性以及算法的强化
    Boost 1.53.0 发布,可移植的C++标准库
    ActiveMQ 5.8.0 发布,JMS 消息服务器
    MySQL 5.5.30 发布
    CloverETL Designer 3.3.1 发布
  • 原文地址:https://www.cnblogs.com/v-dai/p/13723185.html
Copyright © 2020-2023  润新知