Java日期前推一个月 发表于 2015-03-05 | 分类于 Java | | ❤ 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950计算离当前日期之前或之后任意天的日期 /** * 日期计算 * * @author zhangmingxue * */ public class ComputeDateUtils { /** * 计算出离当前日期datas天的日期,若datas小于0表示当前日期之前datas天,若datas大于0表当前日期之后datas天 * * @param 要计算的天数 * @return 得到日期 */ public static Date getDate(int datas) { GregorianCalendar calendar = new GregorianCalendar(); calendar.add(GregorianCalendar.DATE, datas); String begin = new java.sql.Date(calendar.getTime().getTime()).toString(); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); Date beginDate = null; try { beginDate = sdf.parse(begin); } catch (ParseException e) { e.printStackTrace(); } return beginDate; } /** * 计算出离beginDate日期datas天的日期,若datas小于0表示当前日期之前datas天,若datas大于0表当前日期之后datas天 * * @param 要计算的天数 * @return 得到日期 */ public static Date getDate(Date beginDate, int datas) { Calendar beginCal=Calendar.getInstance(); beginCal.setTime(beginDate); GregorianCalendar calendar = new GregorianCalendar(beginCal.get(Calendar.YEAR),beginCal.get(Calendar.MONTH),beginCal.get(Calendar.DATE)); calendar.add(GregorianCalendar.DATE, datas); String begin = new java.sql.Date(calendar.getTime().getTime()).toString(); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); Date endDate = null; try { endDate = sdf.parse(begin); } catch (ParseException e) { e.printStackTrace(); } return endDate; } } 欢迎加入微信公众号 赏 微信打赏 支付宝打赏