日期:2014-05-20 浏览次数:20988 次
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帮助文档
很容易的
------解决方案--------------------
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;
}
------解决方案--------------------
看我的代码,计算某个日期的前一天
// 计算某个日期的后一天
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;
}