• TmsTimeUtils 时间戳


    package com.sprucetec.tms.utils;

    import java.math.BigDecimal;
    import java.text.DateFormat;
    import java.text.ParseException;
    import java.text.SimpleDateFormat;
    import java.util.Calendar;
    import java.util.Date;

    /**
    * 时间工具类
    *
    * Title: TmsTimeUtils.java<br>
    * Description: <br
    */
    public class TmsTimeUtils {

    /**
    * 根据传入的时间字符串,获得unix对应的时间戳格式
    *
    * @author liuqiang(liuqang@meicai.cn)
    * 2016年3月12日
    * @param day
    * @return
    */
    public static Integer getDayUnixTimeStamp(String day) {
    DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
    Date date;
    try {
    date = df.parse(day);
    Calendar cal = Calendar.getInstance();
    cal.setTime(date);
    long timestamp = cal.getTimeInMillis();
    return Integer.valueOf((int) (timestamp / 1000));
    } catch (ParseException e) {
    e.printStackTrace();
    }
    return 0;
    }

    /**
    * 将日期转换为 时间戳
    * @author yangweiqiang 2016.12.01
    * @param date
    * @return
    */
    public static Integer getDayUnixTimeStamp(Date date){
    DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
    String day = df.format(date);
    return getDayUnixTimeStamp(day);
    }

    /**
    * 获取当天日期的unix时间戳
    *
    * @author liuqiang(liuqiang@meicai.cn)
    * 2016年3月12日
    * @return
    */
    public static Integer getTodayUnixTimeStamp() {
    DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
    Date date = new Date();
    String day = df.format(date);
    return getDayUnixTimeStamp(day);
    }

    /**
    * 获得当前系统时间戳
    * @author liuqiang(liuqiang@meicai.cn)
    * 2016年3月20日
    * @return
    */
    public static Integer getNowTimeStamp() {
    Integer now = 0;
    Long time = System.currentTimeMillis() / 1000;
    now = time.intValue();
    return now;
    }

    /**
    * 描述: 将秒转换为指定格式化的日期
    * @author yangweiqiang
    * @param timeStamp 秒数
    * @param format 格式化 yyyy-MM-dd等
    * @date 2016/8/15
    */
    public static String getFormatDate(Integer timeStamp,SimpleDateFormat format){
    return format.format(new Date(timeStamp * 1000L));
    }

    /**
    * 获取某月最大的天数
    * @author yangweiqiang
    * @param time 日期
    * @param format 日期格式化类型
    * @date 2016/8/3
    * @return 实际最大天数
    */
    public static int getMaxDayOfMonth(String time,SimpleDateFormat format){
    try {
    Date date = format.parse(time);
    Calendar calendar = Calendar.getInstance();
    calendar.setTime(date);

    return calendar.getActualMaximum(Calendar.DAY_OF_MONTH);
    } catch (ParseException e) {
    e.printStackTrace();
    }

    return 0;
    }

    /**
    * 获取昨天的时间戳
    * @return
    */
    public static int getPreDayByToday(Integer days){
    return getTodayUnixTimeStamp() + 86400 * days;
    }

    /**
    * 获取指定天的推迟天时间戳
    * @param time
    * @param days
    * @return
    */
    public static int getPreDayBy(Integer time,Integer days){
    return time + 86400 * days;
    }

    /**
    * 获取指定天的推迟天时间戳
    * @param time
    * @param days 增加的天数
    * @return
    */
    public static int getPreDayBy(String time,Integer days){
    return getDayUnixTimeStamp(time) + 86400 * days;
    }

    /**
    * 根据时间戳获取日期(此日期为几号)
    * @param date
    * @return
    */
    public static int getDayBy(Integer date){
    Calendar cal = Calendar.getInstance();
    cal.setTime(new Date((long)date * 1000));
    return cal.get(Calendar.DAY_OF_MONTH);
    }

    /**
    * 获取上个月第一天的Unix时间戳
    */
    public static Integer getLastMonthFirstDayUnixTimeStamp() {
    Calendar cal = Calendar.getInstance();
    cal.setTime(new Date());
    cal.add(Calendar.MONTH, -1);
    cal.set(Calendar.DAY_OF_MONTH, cal.getActualMinimum(Calendar.DAY_OF_MONTH));
    Date lastMonthFirstDay = cal.getTime();
    return TmsTimeUtils.getDayUnixTimeStamp(lastMonthFirstDay);
    }

    /**
    * 获取上个月最后一天的Unix时间戳
    */
    public static Integer getLastMonthLastDayUnixTimeStamp() {
    Calendar cal = Calendar.getInstance();
    cal.setTime(new Date());
    cal.add(Calendar.MONTH, -1);
    cal.set(Calendar.DAY_OF_MONTH, cal.getActualMaximum(Calendar.DAY_OF_MONTH));
    Date lastMonthLastDay = cal.getTime();
    return TmsTimeUtils.getDayUnixTimeStamp(lastMonthLastDay);
    }

    /**
    * 获取本月第一天的Unix时间戳
    */
    public static Integer getThisMonthFirstDayUnixTimeStamp() {
    Calendar cal = Calendar.getInstance();
    cal.setTime(new Date());
    cal.set(Calendar.DAY_OF_MONTH, cal.getActualMinimum(Calendar.DAY_OF_MONTH));
    Date thisMonthFirstDay = cal.getTime();
    return TmsTimeUtils.getDayUnixTimeStamp(thisMonthFirstDay);
    }

    public static void main(String[] args) {
    // System.out.println(TmsTimeUtils.getDayUnixTimeStamp("2016-03-12"));
    // System.out.println(TmsTimeUtils.getTodayUnixTimeStamp());
    System.out.println(getLastMonthFirstDayUnixTimeStamp());
    System.out.println(getLastMonthLastDayUnixTimeStamp());
    System.out.println(getThisMonthFirstDayUnixTimeStamp());
    }
    }
  • 相关阅读:
    C++中虚继承的作用
    游戏程序设计学习初窥简单DirectX代码实现
    vue4.x更改默认端口 larry
    Visual studio 2010几个比较酷的功能
    Web前端编程:勿混淆NodeList与Array
    代码规范之署名
    一则中文文件名引起的问题
    C# WebService调用及数据并行处理
    2010年终总结
    关于DotNetNuke
  • 原文地址:https://www.cnblogs.com/duyinqiang/p/6909868.html
Copyright © 2020-2023  润新知