当前位置: 代码迷 >> J2SE >> 日期加上一个整数得到一个新的日期该怎么写?多谢
  详细解决方案

日期加上一个整数得到一个新的日期该怎么写?多谢

热度:217   发布时间:2016-04-24 01:40:25.0
日期加上一个整数得到一个新的日期该如何写???谢谢
RT

------解决方案--------------------
传说jdk中有Calendar类可以

------解决方案--------------------
Java code
 Calendar c = Calendar.getInstance();        System.out.println(c.get(Calendar.DATE));        c.add(Calendar.DATE, 1);        System.out.println(c.get(Calendar.DATE));
------解决方案--------------------
lz 你描述清楚点
是往年+还是月+还是日+???

------解决方案--------------------
Calendar类

楼主可以参考一下JDK帮助文档

很容易的
------解决方案--------------------
Java code
public String DateAdd(String oldDate,int i){        java.text.SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");                 Date date = new Date();                try {            // 将字符串转换成时间类型            date = sdf.parse(oldDate);        } catch (ParseException e) {            // TODO Auto-generated catch block            e.printStackTrace();        }                Calendar calendar = Calendar.getInstance();        calendar.setTime(date);                calendar.add(Calendar.YEAR, i);//在年上加i         calendar.add(Calendar.MONTH, i);//在月份上加i         calendar.add(Calendar.DAY_OF_MONTH, i);//在天上加i                 String newdate = sdf.format(calendar.getTime());                 System.out.println(newdate);                return newdate;    }
------解决方案--------------------
看我的代码,计算某个日期的前一天 
Java code
// 计算某个日期的后一天        SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");        try {            Date aDate = formatter.parse(Oneday);// 任意日期,包括当前日期            long myTime = (aDate.getTime() / 1000) + 1 * 60 * 60 * 24;// -1表示前一天,+1表示后一天,依次类推            aDate.setTime(myTime * 1000);            String strDay = formatter.format(aDate);            System.out.print(strDay);        } catch (Exception e) {            e.printStackTrace();        }// 求2个日期的天数    public static long DateDays(String date1, String date2)            throws DataFormatException, ActivationException {        SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");        long myTime;        Date aDate2;        Date aDate;        long myTime2;        long days = 0;        try {            aDate = formatter.parse(date1);// 任意日期,包括当前日期            myTime = (aDate.getTime() / 1000);            // SimpleDateFormat formatter =new SimpleDateFormat("yyyy-MM-dd");            aDate2 = formatter.parse(date2);// 任意日期,包括当前日期            myTime2 = (aDate2.getTime() / 1000);            if (myTime > myTime2) {                days = (myTime - myTime2) / (1 * 60 * 60 * 24);            } else {                days = (myTime2 - myTime) / (1 * 60 * 60 * 24);            }        } catch (Exception e) {            e.printStackTrace();        }        return days;    }
  相关解决方案