精华内容
下载资源
问答
  • 时间戳的计算
    2021-12-23 13:13:38

    时间戳转换为日期

    timestampToTime(timestamp) {
        var  date =  new  Date(timestamp*1000); //时间戳为10位需*1000,时间戳为13位的话不需乘1000
        Y = date.getFullYear() +  '-' ;
        M = (date.getMonth()+1 < 10 ?  '0' +(date.getMonth()+1) : date.getMonth()+1) +  '-' ;
        D = date.getDate() +  ' ' ;
        h = date.getHours() +  ':' ;
        m = date.getMinutes() +  ':' ;
        s = date.getSeconds();
        return  Y+M+D+h+m+s;
     }
    

    使用案例:
    this.timestampToTime(1640166624000)

    根据时间戳计算时间差

    intervalTime(startTime,endTime) {
        // var timestamp=new Date().getTime(); //计算当前时间戳
        var timestamp = (Date.parse(new Date()))/1000;//计算当前时间戳 (毫秒级)
         var date1 = ""; //开始时间
        if(timestamp<startTime){
            date1=startTime;
        }else{
            date1 = timestamp; //开始时间
        }
        var date2 = endTime; //结束时间
        // var date3 = date2.getTime() - date1.getTime(); //时间差的毫秒数
        var date3 =  (date2- date1); //时间差的毫秒数
        //计算出相差天数
        var days = Math.floor(date3 / (24 * 3600 * 1000));
        //计算出小时数
    
        var leave1 = date3 % (24 * 3600 * 1000); //计算天数后剩余的毫秒数
        var hours = Math.floor(leave1 / (3600 * 1000));
        //计算相差分钟数
        var leave2 = leave1 % (3600 * 1000); //计算小时数后剩余的毫秒数
        var minutes = Math.floor(leave2 / (60 * 1000));
    
        //计算相差秒数
    
        var leave3 = leave2 % (60 * 1000); //计算分钟数后剩余的毫秒数
        var seconds = Math.round(leave3 / 1000);
        console.log(days + "天 " + hours + "小时 ")
        if(days == 0){
          return hours + "小时"
        }else{
          return days + "天 " + hours + "小时"
        }
        // return   days + "天 " + hours + "小时 " + minutes + " 分钟" + seconds + " 秒"
        
    }
    

    使用案例:
    let time = Date.now();
    this.intervalTime(1640166624000,time)
    (两个参数都是13位时间戳)

    更多相关内容
  • 本文实例为大家分享了Android使用时间戳计算时间差的具体代码,供大家参考,具体内容如下 因当前项目需要计算时间差,进行数据处理,所以在Csdn上找了一下,之后修修补补是可以用的,建议大家如果用到项目中的话,...
  • RTSP时间戳计算工具

    2018-10-31 16:30:58
    根据RTSP流中RTP时间戳,以及RTCP中的信息,计算精确播放时间,以及音频视频时间差。
  • 时间戳计算

    千次阅读 2019-11-08 17:23:02
     Y很简单,它计算了从公元元年到所求年份为止所有的闰年数。从W式看出,该算法先假设所有年都是正常年(365天),再加上闰年额外的天数(式Y)。  到现在为止都算简单,关键是Z式和X式中的那个常数719499是怎么...

    转载自:https://blog.csdn.net/sinat_35170409/article/details/78881282

    Linux源码中的mktime算法解析

        我们知道,从CMOS中读出来的系统时间并不是time_t类型,而是类似于struct tm那样,年月日时分秒是分开存储的。

        那么,要把它转化为系统便于处理的time_t类型,就需要算法进行转换。

        我们都知道我们的公历还是比较复杂的,有大月小月,有闰年非闰年,处理起来会很麻烦。

        但是Linux的源代码仅仅用了短短的几行就完成了这个复杂的转换(Gauss算法),实在令人惊奇。话不多说,先看源代码:

    include/linux/time.h
    
    staticinline unsigned longmktime (unsigned int year, unsigned int mon,
    unsigned int day, unsigned int hour,
    unsigned int min, unsigned int sec)
    {
        if (0>= (int) (mon -=2)) {    /* 1..12 > 11,12,1..10 */
            mon +=12;      /* Puts Feb last since it has leap day */         
            year -=1;
        }
        return ((((unsigned long) (year/4- year/100+ year/400+367*mon/12+ day) +
                year*365-719499)*24+ hour /* now have hours */
                               )*60+ min /* now have minutes */    
                               )*60+ sec; /* finally seconds */
    }

        看上去令人眼花缭乱,毫无头绪。下面就让我们对该算法作具体的分析。

        先不看前面的,直接看return那句,该式整体上具有这样的结构:

            T = ((X * 24 + hour) * 60 + min) * 60 + sec

        这说明该算法是先算出从1970年1月1日开始的天数X,再进而求出具体的时间值T的。

        因此我们重点看如何求天数X。也就是X = year/4 - year/100 + year/400 + 367*mon/12 + day + year*365 - 719499这一部分。

        首先可以将上式拆成:

            Y = year / 4 - year / 100 + year / 400
            Z = 367 * mon / 12
            W = year * 365 + day
            X = Y + Z + W - 719499

        Y很简单,它计算了从公元元年到所求年份为止所有的闰年数。从W式看出,该算法先假设所有年都是正常年(365天),再加上闰年额外的天数(式Y)。

        到现在为止都算简单,关键是Z式和X式中的那个常数719499是怎么回事,似乎莫名其妙。还有就是它们和return语句前面的那个if判断有什么关系呢?

        首先要澄清一点,常数719499并不是像很多人说的那样,是0001年1月1日到1970年1月1日所经历的天数。

        不信你可以随手写个脚本,将得到正确的数字:719162天。

        显然719162和719499是有关系的。我们把注意力放在那个if语句上:

    mon -=2;
    if (mon <=0) {
        mon +=12;
        year--;
    }

        很明显,它是想把1月和2月当作上一年年底的最后两个月,让3月作为一年的第一个月。这样一来,我们可以尽量少的被闰年所影响。

        按照这个假设,让我们先不管Z式是怎么来的,看看0001年1月1日时,Y + Z + W等于什么:

            mon = 1月变成上一年(公元前0001年)的11月;
            year减一后变成了0,因此Y = 0;
            Z = 367 * 11 / 12 = 336;
            W = 1 + 0 * 365 = 1;
            Y + Z + W = 337。

        337这个数正好等于719499 - 719162!换句话说,它是对上述假设所做的补正!于是这些式子就变成了:

            Y = year / 4 - year / 100 + year / 400
            Z = 367 * mon / 12
            V = Z - 337
            W = year * 365 + day
            X = Y + W + V - 719162

        再来看式Z,这个式子表面看不出任何名堂,367这个数字显然很是奇怪。那让我们穷举一下mon,看看这个式子算出的都是些什么值吧:

            mon         Z
            1           30
            2           61
            3           91
            4           122
            5           152
            6           183
            7           214
            8           244
            9           275
            10          305
            11          336
            12          367

        似乎看出了什么?再让我们把相邻的两个mon的Z做一下减法看看:

            mon         dZ
            1           30
            2           31
            3           30
            4           31
            5           30
            6           31
            7           31
            8           30
            9           31
            10          30
            11          31
            12          31

        闻出点味道了吧,很象大小月的规则。让我们回想起那个if语句作了什么,它把1月2月变成了11月和12月,3月变成了1月!还原一下看看:

            mon     org-mon         dZ
            1       3               30
            2       4               31
            3       5               30
            4       6               31
            5       7               30
            6       8               31
            7       9               31
            8       10              30
            9       11              31
            10      12              30
            11      1               31
            12      2               31

        怎么本来应该是大月的3月成了30天?

        那好我们想想这个原理,假设今天是1月1日,那你能说你今年已经过了31天了么?显然不是,1月还没过,我们不能把它算进去。

        这里同然,我们从4月看起,如果今天是愚人节,那么距离3月1日我们经过了31天。

        就像前面说的,我们假设一年是从3月开始,到次年的2月结束。按照这个规则,整个式子里有问题的只有3月,理论上这里应该是0!

        但是这没关系,我们把它减去就行了,于是变成:

            Z = 367 * mon / 12 - 30
            V = Z - 307

        回头看看W式,year * 365,但是按照上面的理论,没过完的这一年不应该加进去,所以这里把它减去,再和V式合并:

            V = Z + 58
            W = (year - 1) * 365 + day

        我们记得这个算法的一年是从3月开始的,因此少算了公元元年的1月和2月的天数:31 + 28 = 59天:(公元元年是正常年)

            V = Z + 59 - 1

        那么最后的这个减1是什么?还是上面那个原理,今天还没过,就不应该把它算进去!

        综上,整个算法就明朗了,主要难于理解的是那个3月开始的假设以及367 * mon / 12会产生类似大小月的序列。

        最后把这些式子整理并罗列一下,做为本文的结束:

    Y = (year - 1) * 365 + year / 4 - year / 100 + year / 400M = 367 * mon / 12 - 30 + 59D = day - 1X = Y + M + D - 719162T = ((X * 24 + hour) * 60 + min) * 60 + sec

    展开全文
  • shell 时间戳计算

    2021-11-11 16:42:18
    时间戳当前时间转换成可以给文件命名的格式获取当前时间的时间戳时间戳计算:文件时间戳: 当前时间转换成可以给文件命名的格式 date +%Y%m%d_%H%M%S #年月天。 date +%Y%m%d_%H%M%S&&date +%s #年月天_小时...

    当前时间转换成可以给文件命名的格式

    date +%Y%m%d_%H%M%S   #年月天。
    date +%Y%m%d_%H%M%S&&date +%s    #年月天_小时分钟秒
    

    在这里插入图片描述

    获取当前时间的时间戳

    date +%s     #获取到当前时间戳
    date +%s -d '1990-01-01 01:01:01'     #获取到指定时间的时间戳
    

    在这里插入图片描述

    时间戳计算:

    time1=`date +%s`     
    time2=`date +%s -d '1990-01-01 01:01:01'`
    day=$[(time1-time2)/86400]      #转换成相差的天数,一天等于86400秒     
    

    在这里插入图片描述

    检查网站证书到期时间

    vim certificatetime.sh
    
    #!/bin/bash
    #H=www.baidu.com
    #
    #
    today=$(date +%s)
    H=$1
    time1=$(curl -vvv -H "$H" https://$H 2>&1| grep 'expire date' |awk -F "date:" '{print $2;}')
    stamp1=$(date -d "$time1" +%s)
    expiretime=$[(stamp1-today)/86400]
    echo $expiretime
    
    chmod +x certificatetime.sh
    bash certificatetime.sh www.baidu.com
    

    检查
    在这里插入图片描述

    在这里插入图片描述

    展开全文
  • 主要介绍了Java中在时间戳计算的过程中遇到的数据溢出问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
  • 使用time进行时间戳计算,使用datetime进行时间戳的转换 时间戳:使用数字表示当前时间 from time import time t0 = time() #表示当前时间戳 for x in range(10): x time()-t0 #使用前后时间戳对程序运行时间...

    使用time进行时间戳计算,使用datetime进行时间戳的转换

    时间戳:使用数字表示当前时间

    from time import time
    t0 = time()  #表示当前时间戳
    for x in range(10):
        x
    time()-t0  #使用前后时间戳对程序运行时间进行计时

    import datetime
    datetime.datetime.fromtimestamp(t0).strftime("%Y-%m-%d %H:%M:%S")  #将时间戳格式化转换

     

    展开全文
  • 1 输入时间戳如20210704计算是一年的第几天 1 输入时间戳如20210704计算是一年的第几天 public class calader_to_days { public int date_data(int input){ int year = input / 10000; int month = input / ...
  • 在线时间戳计算时间差 在线时间戳计算时间差 Unix时间戳是从1970年1月1日(UTC/GMT的午夜)开始所经过的秒数,不考虑闰秒。Unix时间戳(英文为Unix epoch, Unix time, POSIX time 或 Unix timestamp)是从1970年1月...
  • mysql查询两个datetime数据的时间差SQL SELECT TIMESTAMPDIFF(SECOND,tba.create_time,tba.update_time)*1000 SELECT TIMESTAMPDIFF(MINUTE,tba.create_time,tba.update_time)*1000 SELECT TIMESTAMPDIFF(HOUR,...
  • 时间戳计算运行时间 from time import time #time():记下每一次time()这一行命令时的时间戳 #时间戳是一行数字,用来记录此时此刻的时间 t0 = time()#当前时间 for i in range(10): print(i*i*i) time() - t0#...
  • python 时间戳计算

    千次阅读 2020-02-08 11:07:34
    根据当前时间戳获得整小时时间戳 unit = 3600 start_time = int(time.time())/3600 * 3600 根据当前时间戳获得整天时间戳 unit = 3600*24 start_time = int(time.time()) / unit * unit - 8 * 3600由于时间戳起始为...
  • <script> setInterval(function(){ var d1 = new Date(); var d2 = new Date(2020,11,2); // console.log(d2 - d1) var seconds = (d1-d2 )/1000;... // console.log(seconds) ...
  • C#时间戳计算公式、毫秒级时间戳

    千次阅读 2020-11-23 09:59:44
    时间戳是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数。 时间戳转换的网址一大把,百度随便搜一下就有,比如: http://tool.chinaz.com/Tools/unixtime.aspx C#...
  • unix时间戳 unix时间戳是从1970年1月1日(UTC...时间戳计算时间 time.Unix(timestamp, 0) 计算时间差 用到parse函数和sub函数 f1, err := time.Parse("2006-01-02 15:04:05", t1) f2, err := time.Parse("2006-01-02 15
  • //处理时间数据 gettime(dt) { let curDate = new Date(dt); let m = curDate.getMonth() + 1; curDate.setMonth(m); curDate.setDate(0); return num: curDate.getDate()//当前月总天数 ...
  • c_continueDateTime(timeStamp){ // 根据时间戳计算具体持续时间,天 时 分 秒 let totalTime = timeStamp; console.log(totalTime,'totalTime1'); let days = parseI...
  • 根据时间戳计算宝宝年龄(年月日)

    千次阅读 2019-04-17 14:36:00
    //每个月按30天计算所以误差有些大 // 根据时间戳计算宝宝年龄 getBabyAge:function(time){ let birthday = time; let now = new Date().getTime(); let hours...
  • 根据时间戳计算两个时间差

    千次阅读 2020-11-28 19:12:16
    /*** 两个时间相差距离多少天多少小时多少分多少秒 * 时间参数为 Unix时间戳* @param str1 时间参数 1 格式:1407132214* @param str2 时间参数 2 格式:1407132214* @return String 返回值为:xx天xx小时xx分xx秒*/...
  • 时间戳计算理解

    千次阅读 2019-03-07 16:46:36
    时间戳单位:时间戳计算的单位不为秒之类的单位,而是由采样频率所代替的单位,这样做的目的就是为了是时间戳单位更为精 准。比如说一个音频的采样频率为8000HZ,那么我们可以把时间戳单位设为1/8000。时间戳增量:...
  • 根据时间戳计算距离当前时间

    千次阅读 2020-03-31 11:20:19
    getDistanceDay(time) { var stime = new Date().getTime(); var etime = time.toString().length == 8 ? parseInt(time) * 1000 : parseInt(time) ... // 传入的时间戳是8位则需要乘1000 var use...
  • 时间戳计算所间隔天数

    千次阅读 2019-09-25 00:24:52
    时间戳计算间隔天数计算 Math.floor((结束时间−开始时间)/(24∗3600∗1000)) Math.floor((结束时间-开始时间)/(24*3600*1000)) Math.floor((结束时间−开始时间)/(24∗3600∗1000)) <template slot-scope="{ ...
  • 声明一个函数用于将时间戳转为年龄 function getAge(birthday) { //出生时间 毫秒 let birthDayTime = new Date(birthday).getTime(); //当前时间 毫秒 let nowTime = new Date().getTime(); //一年毫秒数...
  • 根据时间戳计算时间间隔在项目中经常会遇到,展现的效果就是比如:刚刚发布、1天前发布、33天前发布或者1年前发布,这种效果相信大家在微信小程序或者app及网站中经常能够遇到,这里给大家分享一个使用wxs写的时间...
  • java时间戳计算

    千次阅读 2018-05-21 17:50:54
    //判断时间戳是否在一定时间内 private boolean compareTime(String timestamp){ boolean bl=false; if(StringUtils.isNotBlank(timestamp)){ long endtime = Long.parseLong(timestamp); ...
  • JS 用时间戳计算两个时间之间间隔

    千次阅读 2019-08-22 10:31:45
    通常我们计算时间差都是通过获取两个时间数据,然后分别使用 getTime() 方法返回与固定的1970 年 1 月 1 日的时间差,通过对返回毫秒数的差,换算成时间单位,得出两个时间的时间差。 时间格式 第一种:"2019/08/...
  • export function timeago(dateTimeStamp) { //dateTimeStamp是一个时间毫秒,注意时间戳是秒的形式,在这个毫秒的基础上除以1000,就是十位数的时间戳。13位数的都是时间毫秒。 var minute = 1000 * 60; //把分,时...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 189,651
精华内容 75,860
关键字:

时间戳的计算