import java.util.*;Calendar cal=Calendar.getInstance();
cal.setTime(new Date());
cal.set(Calendar.DAY_OF_YEAR,cal.get(Calendar.DAY_OF_YEAR)-30);

解决方案 »

  1.   

    Calendar cal=Calendar.getInstance();
    cal.setTimeInMillis(new Date(System.currentTimeMillis())-30*24*60*60);怎么样有创新精神吧!
      

  2.   

    好像不是很好用,有两个报错:
    1"clearData.java": Error #: 375 : operator - cannot be applied to (java.util.Date, int) 
    2"clearData.java": Error #: 306 : method setTimeInMillis(long) has protected access in class java.util.Calendar 
      

  3.   

    其实我最终想实现的是,定期清除日志表中的数据,比如程序定在每天晚上9点清除30天前的莫个表中的数据,而表中的数据有一个字段是date型的,我就通过这个字段来判断该清除哪些数据。