日期格式工具002——简单的日期加减工具类

日期格式工具类基础版002

对常用的日期转换,提供工具类,并通过深度剖析,进行工具类升级

在日常开发中,我们经常需要对日期时间与字符串之间的转换,现将通用方法进行工具类提取和剖析。

上一篇:日期格式工具001——简单的日期和字符串之间的转换
下一篇:日期格式工具003——日期加减工具方式(升级)

针对简单日期工具转换进行升级,实现简单的时间加减。

	/**
     * 偏移时间
     * @param date Date 初始时间
     * @param seconds long 偏移秒数
     * @return Date
     */
    public static Date offsetSecond(Date date, int seconds) {
        long time = date.getTime();
        time = time + (seconds * 1000);
        return new Date(time);
    }

    /**
     * 偏移时间
     * @param date Date 初始时间
     * @param minutes long 偏移分钟数

     * @return Date
     */
    public static Date offsetMinute(Date date, int minutes) {
        return offsetSecond(date, 60 * minutes);
    }

    /**
     * 偏移时间
     * @param date Date 初始时间
     * @param hours long 偏移小时数

     * @return Date
     */
    public static Date offsetHour(Date date, int hours) {
        return offsetMinute(date, 60 * hours);
    }

    /**
     * 偏移时间
     * @param date Date 初始时间
     * @param days long 偏移天数
     * @return Date
     */
    public static Date offsetDay(Date date, int days) {
        return offsetHour(date, 24 * days);
    }

工具类

/**
 * 1、日期格式转换
 * 2、设置日期偏移,时间的加减法
 */
public class DateHelper2 {
    /**
     * 年月格式
     * yyyyMM
     */
    public static String YM_FORMAT = "yyyyMM";

    /**
     * 年月日格式
     * yyyyMMdd
     */
    public static String YMD_FORMAT = "yyyyMMdd";

    /**
     * 年月日格式
     * yyyy-MM-dd
     */
    public static String DATE_FORMAT = "yyyy-MM-dd";

    /**
     * 年月时间格式
     * yyyyMMddHHmmss
     */
    public static String PLAIN_DATE_FORMAT = "yyyyMMddHHmmss";

    /**
     * 年月日时间格式
     * yyyy-MM-dd HH:mm:ss
     */
    public static final String DEFAULT_DATE_FORMAT = "yyyy-MM-dd HH:mm:ss";


    /**
     * 将Date转换成字符串
     * @param date Date 要转换的Date实例
     * @param format String 日期格式字符串
     * @return String
     */
    public static String dateString(Date date, String format) {
        if (date == null) {
            date = new Date();
        }
        SimpleDateFormat sdf = null;
        try {
            sdf = new SimpleDateFormat(format);
        } catch (Exception e) {
            sdf = new SimpleDateFormat(DEFAULT_DATE_FORMAT);

        }
        return sdf.format(date);
    }

    /**
     * 将字符串转换成Date
     * @param dateStr
     * @param format
     * @return
     */
    public static Date stringDate(String dateStr, String format) throws ParseException {
        Date date = null;
        SimpleDateFormat sdf = null;
        try {
            sdf = new SimpleDateFormat(format);
            date = sdf.parse(dateStr);
        } catch (Exception e) {
            sdf = new SimpleDateFormat(DEFAULT_DATE_FORMAT);
            date = sdf.parse(dateStr);
        }
        return date;
    }

    /**
     * 将Date转换成字符串
     * @param date Date 要转换的Date实例
     * @return String
     */
    public static String dateString(Date date){
        return dateString(date,DEFAULT_DATE_FORMAT);
    }

    /**
     * 将字符串转换成Date
     * @param dateStr
     * @return
     */
    public static Date stringDate(String dateStr) throws ParseException {
        return stringDate(dateStr,DEFAULT_DATE_FORMAT);
    }


    /**
     * 偏移时间
     * @param date Date 初始时间
     * @param seconds long 偏移秒数
     * @return Date
     */
    public static Date offsetSecond(Date date, int seconds) {
        long time = date.getTime();
        time = time + (seconds * 1000);
        return new Date(time);
    }

    /**
     * 偏移时间
     * @param date Date 初始时间
     * @param minutes long 偏移分钟数

     * @return Date
     */
    public static Date offsetMinute(Date date, int minutes) {
        return offsetSecond(date, 60 * minutes);
    }

    /**
     * 偏移时间
     * @param date Date 初始时间
     * @param hours long 偏移小时数

     * @return Date
     */
    public static Date offsetHour(Date date, int hours) {
        return offsetMinute(date, 60 * hours);
    }

    /**
     * 偏移时间
     * @param date Date 初始时间
     * @param days long 偏移天数
     * @return Date
     */
    public static Date offsetDay(Date date, int days) {
        return offsetHour(date, 24 * days);
    }
    
}
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值