时间的转换

当前几号 如果是十号前 前面拼接0 % 表示开始格式说明符,0 表示如果数字长度不够2位,那么前面用0填充,2 表示数字的最小位数
String dayS = String.format(“%02d”, now.getDayOfMonth());

AssertUtil.isTrue(startDate.isAfter(endDate)).throwException(“结束时间不能早于开始时间!”);
AssertUtil.isTrue(startDate.isBefore(now.minusMonths(13))).throwException(“您选的时间超过最大筛选时间跨度,无法导出账单!!”);
AssertUtil.isTrue(endDate.isAfter(now.minusMonths(1))).throwException(“您选的时间尚未生成账单!”);
now.minusMonths(2).isBefore(endDate)

String转date

    SimpleDateFormat sdf1 = new SimpleDateFormat(DateUtils.YYYYMMDD);
    SimpleDateFormat sdf2 = new SimpleDateFormat(DateUtils.YYYY_MM_DD);
    String data = build.getPeriod().concat("01");
    Date dateDate = sdf1.parse(data);

date 转String
String period = sdf2.format(dateDate);

/****
 * 传入具体日期 ,返回具体日期增加一个月。
 * @param date 日期(2017-04-13)
 * @return 2017-05-13
 * @throws ParseException
 */
public static String subMonth(String date) throws ParseException {
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    Date dt = sdf.parse(date);
    Calendar rightNow = Calendar.getInstance();
    rightNow.setTime(dt);
    rightNow.add(Calendar.MONTH, 1);
    Date dt1 = rightNow.getTime();
    String reStr = sdf.format(dt1);
    return reStr;
}

/**
* 当前时间减去天数
* @param
* @return
*/
public static String CalendarDateDays(Integer days){

    SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
    //取今天日期,如果日期类型为String类型,可以使用df.parse()方法,转换为Date类型
    Date date = new Date();
    Calendar calendar = Calendar.getInstance();//new一个Calendar类,把Date放进去
    calendar.setTime(date);
    /*calendar.add(Calendar.DATE, 1);//实现日期加一操作,也就是明天
    //控制台打印的日期为明天日期,2019-06-11
    System.out.println("明天的日期为:" + df.format(calendar.getTime()));*/
    //此时的日期为明天的日期,要实现昨天,日期应该减二
    calendar.add(Calendar.DATE, -days);
    return df.format(calendar.getTime());
}

/**
 * 当前时间减去月数 yyyy-MM-dd
 * @param month
 * @return
 */
public static String CalendarDateMonth(Integer month){

    SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
    //取今天日期,如果日期类型为String类型,可以使用df.parse()方法,转换为Date类型
    Date date = new Date();
    Calendar calendar = Calendar.getInstance();//new一个Calendar类,把Date放进去
    calendar.setTime(date);
    calendar.add(Calendar.MONTH, -month);//当前时间减去一个月,即一个月前的时间
    return df.format(calendar.getTime());
}

/**
 * 当前时间减去月数 yyyy-MM
 * @param month
 * @return
 */
public static String CalendarDateMonths(Integer month){

    SimpleDateFormat df = new SimpleDateFormat("yyyy-MM");
    //取今天日期,如果日期类型为String类型,可以使用df.parse()方法,转换为Date类型
    Date date = new Date();
    Calendar calendar = Calendar.getInstance();//new一个Calendar类,把Date放进去
    calendar.setTime(date);
    calendar.add(Calendar.MONTH, -month);//当前时间减去一个月,即一个月前的时间
    return df.format(calendar.getTime());
}

/**
 * 获取当前时间到凌晨12点的毫秒数
 *
 * //cal.set(Calendar.HOUR,0);此方法如果当前时间超过中午12点,则返回的结果是当前时间到明天中午十二点的秒数,如果当前时间不超过中午12:00,则返回的结果是到第二天凌晨的秒数
 * //cal.set(Calendar.HOUR_OF_DAY, 0);无论当前时间是否超过中午12:00,获取的都是到第二天凌晨的秒数。
 * Calendar.HOUR:12小时制。
 * Calendar.HOUR_OF_DAY :24小时制。
 * @return
 */
public static Long getSecondsNextEarlyMorning() {
    Calendar cal = Calendar.getInstance();
    cal.add(Calendar.DAY_OF_YEAR, 1);
    cal.set(Calendar.HOUR_OF_DAY, 0);
    cal.set(Calendar.SECOND, 0);
    cal.set(Calendar.MINUTE, 0);
    cal.set(Calendar.MILLISECOND, 0);
    return (cal.getTimeInMillis() - System.currentTimeMillis());
}
  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值