查过用Calendar。但没找到具体用法?请给出示例代码?谢谢

解决方案 »

  1.   

    此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
    楼主【suncheng_hong】截止到2008-06-26 11:21:35的历史汇总数据(不包括此帖):
    发帖数:84                 发帖分:3570               
    结贴数:67                 结贴分:2850               
    未结数:17                 未结分:720                
    结贴率:79.76 %            结分率:79.83 %            
    楼主加油
      

  2.   

    Calendar  add(int field, int amount) 
              根据日历的规则,为给定的日历字段添加或减去指定的时间量
    用这个,减掉30天,然后getTime()得到Date就行了!
      

  3.   

    可是Calendar如何与某一日期绑定,并没有传date的方式啊?
      

  4.   

    setTime(Date date) 
              使用给定的 Date 设置此 Calendar 的时间。
      

  5.   


    GregorianCalendar gcNew=new GregorianCalendar();
        gcNew.set(Calendar.MONTH, gcNew.get(Calendar.MONTH)-1);
        Date dtFrom=gcNew.getTime();显示当前日期前一个月的日期
      

  6.   

     Calendar theCa = Calendar.getInstance();
     theCa.setTime(new Date());
     theCa.add(theCa.DATE, -30);
     Date date = theCa.getTime();
      

  7.   

    用法不是一样吗!把MONTH改DATE,-1改-30不就行了
      

  8.   

    Calendar calendar=new GregorianCalendar();
    System.out.println("当时日期是:"+calendar.getTime());
    calendar.add(Calendar.DATE, -30);
    System.out.println("30天前是:"+calendar.getTime());要获得calendar的相应field值, 可以用calendar.get(int field)来取.
    field可以是Calendar.Date, Month, Year, DayOfMonth, DayOfWeek等. 
      

  9.   


    /**
     * 得到N天后的日期
     * @param num
     * @return
     */
    public static String getDate(int num) {
    long time = System.currentTimeMillis() + (1000L * 60 * 60 * 24 * num);
    String pattern = "yyyy-MM-dd";
    Date date = new Date();
    if (time > 0) {
    date.setTime(time);
    }
    SimpleDateFormat format = new SimpleDateFormat(pattern);
    return format.format(date);
    }
      

  10.   

    这个方法把num为负值,可得到当天前n天的日期,
      

  11.   

    Calendar theCa = Calendar.getInstance();
     theCa.setTime(new Date());
     theCa.add(theCa.DATE, -30);
     Date date = theCa.getTime();正解
      

  12.   


    Calendar calendar=new GregorianCalendar(); 
    SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-yy");
    String dateStr = format.format(calendar.getTime());
    System.out.println("当前日期是 "+dateStr); 
    calendar.add(Calendar.DATE, -30); 
    dateStr = format.format(calendar.getTime());
    System.out.println("三十天前是 "+dateStr); 
      

  13.   


    /**
     * 得到给定日期N天后的日期
     * @param num
     * @return
     */
    public static void do4(String datestr,int num) {
    String pattern = "yyyy-MM-dd";
    SimpleDateFormat format = new SimpleDateFormat(pattern);
    try{
    Date date1 = format.parse(datestr);
    long time = date1.getTime()+(1000L * 60 * 60 * 24 * num);
    Date date = new Date();
    if (time > 0) {
    date.setTime(time);
    }
    System.out.println(format.format(date));
    }catch(Exception e){}
    }