我使用的日期格式为“MM / dd / yy” 我想执行像这样的操作:
LastActDate = Todaysdate -(PrchaseDate + 1)
在myDb中,日期存储为2011-07-08 19:30:06(java util date
答案 0 :(得分:2)
使用Calendar.add(int field, int amount)
将指定的时间量添加或减去给定日历 字段,基于日历的规则。
import java.util.GregorianCalendar;
import java.util.Calendar;
class AddDates {
public static void main(String[] args) {
Calendar today = new GregorianCalendar();
Calendar purchased = new GregorianCalendar();
purchased.add(Calendar.DAY_OF_MONTH, 1);
Calendar lastActDate = new GregorianCalendar();
lastActDate.setTimeInMillis(today.getTimeInMillis() - purchased.getTimeInMillis());
}
}
答案 1 :(得分:1)
我强烈建议您使用joda library进行任何日期/时间计算。
您只需查看网站上的示例,即可轻松完成上述要完成的工作。
答案 2 :(得分:0)
这应该有效。假设+1是“加一天”。
try {
String dateString = "10/20/11";
SimpleDateFormat df = new SimpleDateFormat("MM/dd/yy");
Date dt = df.parse(dateString);
final long ONE_DAY = 1000 * 60 * 60 * 24;
Date lastActDate = new Date(System.currentTimeMillis() - (dt.getTime() + ONE_DAY));
String lastActDateString = df.format(lastActDate);
}
catch ( ParseException pe ) {
pe.printStackTrace();
}