C#时间戳和时间互转-阿里云开发者社区

开发者社区> 开发与运维> 正文

C#时间戳和时间互转

简介: C#时间戳和时间互转常用方法: static readonly DateTime StartDateTime = TimeZone.

C#时间戳和时间互转常用方法:

        static readonly DateTime StartDateTime = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1));

        /// <summary>
        /// 时间戳转为C#格式时间
        /// </summary>
        /// <param name="timeStamp">13位整数型timestamp</param>
        /// <returns></returns>
        public static DateTime GetTime(long timeStamp)
        {
            try
            {
                TimeSpan toNow = new TimeSpan(timeStamp * 10000L);
                return StartDateTime.Add(toNow);
            }
            catch
            {
                logger.Warn("时间戳转换失败", timeStamp.ToString());
                return DateTime.Now;
            }
        }

        /// <summary>
        /// 时间戳转为C#格式时间
        /// </summary>
        /// <param name="timeStamp">13位整数型timestamp</param>
        /// <returns></returns>
        public static DateTime GetTime(string timeStamp)
        {
            if (string.IsNullOrEmpty(timeStamp)) { return DateTime.Now; }
            try
            {
                long lTime = long.Parse(timeStamp) * 10000L;
                TimeSpan toNow = new TimeSpan(lTime);
                return StartDateTime.Add(toNow);
            }
            catch
            {
                logger.Warn("时间戳转换失败", timeStamp);
                return DateTime.Now;
            }
        }


        /// <summary>
        /// DateTime时间格式转换为Unix时间戳格式
        /// </summary>
        /// <param name=”time”></param>
        /// <returns></returns>
        public static long ConvertDateTimeInt(DateTime time)
        {
            System.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1));
            return (long)(time - startTime).Ticks / 10000;
        }

希望以上分享对初学朋友有些帮助,谢谢!
更多关注付义方技术博客:http://blog.csdn.net/fuyifang
或者直接用手机扫描二维码查看更多博文:
付义方CSDN博客二维码

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

其他文章