C#获取时间戳和时间戳反转为时间方法

/// <summary>
        /// 取时间戳,高并发情况下会有重复。想要解决这问题请使用sleep线程睡眠1毫秒。
        /// </summary>
        /// <param name="AccurateToMilliseconds">精确到毫秒</param>
        /// <returns>返回一个长整数时间戳</returns>
        public static long GetTimeStamp(bool AccurateToMilliseconds = false)
        {
            if (AccurateToMilliseconds)
            {

                // 使用当前时间计时周期数(636662920472315179)减去1970年01月01日计时周期数(621355968000000000)除去(删掉)后面4位计数(后四位计时单位小于毫秒,快到不要不要)再取整(去小数点)。

                //备注:DateTime.Now.ToUniversalTime不能缩写成DateTime.Now.Ticks,会有好几个小时的误差。

                //621355968000000000计算方法 long ticks = (new DateTime(1970, 1, 1, 8, 0, 0)).ToUniversalTime().Ticks;

                return (DateTime.Now.ToUniversalTime().Ticks - 621355968000000000) / 10000;

            }
            else
            {

                //上面是精确到毫秒,需要在最后除去(10000),这里只精确到秒,只要在10000后面加三个0即可(1秒等于1000毫米)。
                return (DateTime.Now.ToUniversalTime().Ticks - 621355968000000000) / 10000000;
            }
        }

        /// <summary>
        /// 时间戳反转为时间,有很多中翻转方法,但是,请不要使用过字符串(string)进行操作,大家都知道字符串会很慢!
        /// </summary>
        /// <param name="TimeStamp">时间戳</param>
        /// <param name="AccurateToMilliseconds">是否精确到毫秒</param>
        /// <returns>返回一个日期时间</returns>
        public static DateTime GetTime(long TimeStamp, bool AccurateToMilliseconds = false)
        {
            System.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1)); // 当地时区
            if (AccurateToMilliseconds)
            {
                return startTime.AddTicks(TimeStamp * 10000);
            }
            else
            {
                return startTime.AddTicks(TimeStamp * 10000000);
            }
        }

原文地址:https://www.cnblogs.com/Loners/p/12516541.html

时间: 2024-10-19 14:36:11

C#获取时间戳和时间戳反转为时间方法的相关文章

mysql 将时间戳直接转换成日期时间

date为需要处理的参数(该参数是Unix 时间戳),可以是字段名,也可以直接是Unix 时间戳字符串 后面的 '%Y%m%d' 主要是将返回值格式化 例如: mysql>SELECT FROM_UNIXTIME( 1249488000, '%Y%m%d' ) ->20071120 mysql>SELECT FROM_UNIXTIME( 1249488000, '%Y年%m月%d' ) ->2007年11月20 UNIX_TIMESTAMP()是与之相对正好相反的时间函数 UNIX

Objective-C时间戳转换的转换和时间

什么是时间戳? 时间戳(timestamp),一般是一个字符序列.唯一地标识某一刻的时间.数字时间戳技术是数字签名技术一种变种的应用. 思考:简单来讲就是依据文件hash加密后生成的摘要和时间生成的时间凭证,它的数值是从1970年1月1日8点到如今时间的总的毫秒数 在Objective-C中怎样将时间戳转换为NSDate? NSString*[email protected]"1283376197"; NSTimeIntervaltime=[str doubleValue]; NSDa

php 计算当天凌晨时间戳 以及获取其他常用时间戳

php 计算当日凌晨时间戳 以及获取其他常用时间戳(持续补充中...) 获取当天凌晨时间戳: echo strtotime(date('Y-m-d')); 以下再列举一些获取其他常用时间戳的方法 获取明天凌晨的时间戳 echo strtotime(date('Y-m-d',strtotime('+1 day'))); 获取指定时间字符串的时间戳: echo strtotime('2012-11-2'); echo strtotime('2012-11-2 00:00:00'); echo str

C# 时间戳(TimeStamp)与时间(DateTime)的互相转换

什么是时间戳:时间戳是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数. 时间戳在线转换网址:https://tool.lu/timestamp,时间戳的转换网址有很多,经常用的还有站长工具. 下附代码,在控制台中粘贴在启动类即可使用,需引用(using System)命名空间 ; /// <summary> /// 取时间戳,高并发情况下会有重复.想要解决这问题请使用sleep线程睡眠1毫秒. /// </sum

php获取今日开始时间戳和结束时间戳

1.php获取今日开始时间戳和结束时间戳  $beginToday=mktime(0,0,0,date('m'),date('d'),date('Y'));$endToday=mktime(0,0,0,date('m'),date('d')+1,date('Y'))-1; 2.php获取昨日起始时间戳和结束时间戳 $beginYesterday=mktime(0,0,0,date('m'),date('d')-1,date('Y'));$endYesterday=mktime(0,0,0,dat

杂记b---jquery.siblings(),HTML页时间戳转化为正常的时间显示,ng-click事件的写法

jQuery siblings() 方法返回被选元素的所有同胞元素,并且可以使用可选参数来过滤对同胞元素的搜索. 实例演示:点击某个li标签后将其设置为rgb(248,198,173)橙色样式,而其所有同胞元素去除#FFFFFF(白色样式) <div id="each"> <span>标签:</span> <ul class="right-topfloat"> <li style="background

ios new Date(&#39;yyyy-MM-dd HH-mm-ss&#39;).getTime() 方法获取不到时间戳

ios兼容性问题  不支持 ‘-’ 连接日期 解决方法 new Date("yyyy-MM-dd HH-mm-ss".replace(/-/g, "/")) ios new Date('yyyy-MM-dd HH-mm-ss').getTime() 方法获取不到时间戳 原文地址:https://www.cnblogs.com/baobao0205/p/12217428.html

Java 获取当前系统时间方法比较

转载: http://blog.csdn.net/zzjjiandan/article/details/8372617 一. 获取当前系统时间和日期并格式化输出: import java.util.Date;import java.text.SimpleDateFormat; public class NowString {public static void main(String[] args) { SimpleDateFormat df = new SimpleDateFormat("yy

Android获取系统时间方法详解

Android获取系统时间方法的方法有很多种,常用的有Calendar.Date.currentTimeMills等方法. (1)Calendar Calendar获取系统时间首先要用Calendar.getInstance()函数获取一个实例,再为该实例设定时区(中国的时区为GMT+8:00),最后使用Calendar.get()函数获取时间的具体信息,如年,月,日,小时,分,秒,星期几. package com.hzhi.time_example; import java.util.Cale