自定义时间运算

来源:互联网 发布:数据库建表工具 编辑:程序博客网 时间:2024/06/05 14:26
/** * 获取当前日期的前N天日期 * @param type(需要做减法的日期类型 年year、月month、日day、小时hour、周week) * @param num (加减数量,为0默认当前日期) * @param dateNow (起始时间,传null 时为 new Date()) * @param parse (自定义日期格式) * @return beforeDate * @since  2015年4月14日 下午17:13:45 */private String getBeforeDate(String type,int num,String dateNow,String parse){Date dNow = null;Date dBefore = new Date();SimpleDateFormat sdf = new SimpleDateFormat(parse);Calendar calendar = Calendar.getInstance();if(dateNow == null){dNow = new Date();}else{try {dNow = sdf.parse(dateNow);} catch (ParseException e) {System.out.println(e);}}calendar.setTime(dNow);//把当前时间赋给日历if(("year").equals(type)){calendar.add(Calendar.YEAR, num);}else if(("week").equals(type)){calendar.add(Calendar.WEEK_OF_MONTH, num);}else if(("month").equals(type)){calendar.add(Calendar.MONTH, num);}else if(("day").equals(type)){calendar.add(Calendar.DAY_OF_MONTH, num);}else if(("hour").equals(type)){calendar.add(Calendar.HOUR_OF_DAY, num);}dBefore = calendar.getTime();String beforeDate = null;if(num == 0){beforeDate = sdf.format(dNow);}else{beforeDate = sdf.format(dBefore);}return beforeDate;}

0 0