时间戳工具类

package com.common;

import java.math.BigDecimal;
import java.util.Calendar;
import java.util.TimeZone;

public class Common {

    /**
     * 获取当前毫秒转int
     * 
     * @return
     */
    public Integer getCurTimestamp() {
        long l = System.currentTimeMillis();
        return (int) (l / 1000);
    }

    // 获取今天0点的时间戳
    public static Integer getCurDayZeroTimestamp(){
        Calendar cal = Calendar.getInstance();
        cal.set(Calendar.HOUR_OF_DAY, 0);
        cal.set(Calendar.SECOND, 0);
        cal.set(Calendar.MINUTE, 0);
        cal.set(Calendar.MILLISECOND, 0);
        return (int) (cal.getTimeInMillis()/1000);
    }

    // 获取 当月0点的时间戳
    public static Integer getCurMonthZeroTimestamp(){
        Calendar cal = Calendar.getInstance();
        cal.set(cal.get(Calendar.YEAR),cal.get(Calendar.MONDAY), cal.get(Calendar.DAY_OF_MONTH), 0, 0,0);
        cal.set(Calendar.DAY_OF_MONTH,cal.getActualMinimum(Calendar.DAY_OF_MONTH));
        return (int) (cal.getTimeInMillis()/1000);
    }

    // 获取今年 0点的时间戳
    public static Integer getCurYearZeroTimestamp(){

        Calendar c = Calendar.getInstance();  
        c.add(Calendar.YEAR, 0);  
        c.set(Calendar.DAY_OF_YEAR, 1);//设置为1号,当前日期既为本年第一天  
        //将小时至0  
        c.set(Calendar.HOUR_OF_DAY, 0);  
        //将分钟至0  
        c.set(Calendar.MINUTE, 0);  
        //将秒至0  
        c.set(Calendar.SECOND,0);  
        //将毫秒至0  
        c.set(Calendar.MILLISECOND, 0);  
        // 获取今天第一天的时间戳  
        return (int) (c.getTimeInMillis()/1000);
    }

    /* 
     * 将时间转换为时间戳
     */    
    public static String dateToStamp(String s) throws ParseException{
        String res;
        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        Date date = simpleDateFormat.parse(s);
        long ts = date.getTime()/ 1000;
        res = String.valueOf(ts);
        return res;
    }

    /* 
     * 将时间戳转换为时间
     */
    public static String stampToDate(String s){
        String res;
        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        long lt = new Long(s);
        Date date = new Date(lt*1000);
        res = simpleDateFormat.format(date);
        return res;
    }
    /**
     * 计算当前月 , 共有多少天
     * 
     * @return
     */
    private int getDaysByYearMonth() {
        Calendar cal = Calendar.getInstance(); // 调用Calendar 中的方法;
        cal.set(Calendar.DAY_OF_MONTH, 1); // 把时间调整为当月的第一天;
        cal.add(Calendar.MONTH, 1); // 月份调至下个月;
        cal.add(Calendar.DAY_OF_MONTH, -1); // 时间减去一天(就等于上个月的最后一天)
        int month = cal.get(Calendar.MONTH) + 1; // 调取月份(月份在表示中会少 1,如:1月份得出数字是
                                                    // 0;
        int days = cal.get(Calendar.DAY_OF_MONTH);// 调取当月的天数。
        return days;
    }

}

猜你喜欢

转载自blog.csdn.net/diyu122222/article/details/78539210