获得今天零点时间戳(转)

面我取的是今天零点毫秒时间戳也就是距格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总毫秒数。

java自带获得当前毫秒时间戳的方法是System.currentTimeMillis(),零点是24小时轮回的零界点。所以我们把当前时间戳取24小时毫秒数取余,然后用当前毫秒时间戳减这个余就行。

/**
     * @Author:whf
     * @param:
     * @Description: 获得“今天”零点时间戳 获得2点的加上2个小时的毫秒数就行
     * @Date:2018/4/12 0012
     */
    public static Long getTodayZeroPointTimestamps(){
            Long currentTimestamps=System.currentTimeMillis();
            Long oneDayTimestamps= Long.valueOf(60*60*24*1000);
            return currentTimestamps-(currentTimestamps+60*60*8*1000)%oneDayTimestamps;
    }

  加上8小时的毫秒数是因为毫秒时间戳是从北京时间1970年01月01日08时00分00秒开始算的,这样今天零点取oneDayTimestamps的余就是0,。

以前的是程序员的老板,现在是末路出家的程序员小白。
原文地址:https://www.cnblogs.com/xiaoyao-blog/p/14780369.html