我想让一个日期+多少天后又等于另一个日期,就是比如:今天再过一天以后一周以后,或是一个月 ,一年以后 都可以得到正确的 日期时间!
请问如何实现! 在线等候!!!!

解决方案 »

  1.   

    Calendar cd = Calendar.getInstance();
    cd.add(Calendar.DAY_OF_YEAR, 1);
    Calendar.DAY_OF_YEAR  这个你自己选,有年月日小时分秒,,第二个参数是数值,正负都行。
      

  2.   

    我想到了: public static String Ds(int days) {
    SimpleDateFormat form = new SimpleDateFormat("yyyy-MM-dd");
    Calendar calendar = Calendar.getInstance();
    int day = calendar.get(Calendar.DAY_OF_YEAR);
    calendar.set(Calendar.DAY_OF_YEAR, day + days);
    Date cc = calendar.getTime();
    return form.format(cc);
    }
      

  3.   

    Calendar 类 API 查看!
      

  4.   

    以前的笔记,也许对你有帮助。相关的类如下:java.util.Date;java.sql.Date;java.sql.Time;java.sql.Timestamp;java.text.DateFormat;java.text.SimpleDateFormat;java.util.Calender; 日期的格式化:相关类:java.text.DateFormat;java.text.SimpleDateFormat;最常用的当然是java.text.SimpleDateFormat;    例如:                java.util.Date date=new java.util.Date();             //默认是当前时间                java.text.SimpleDateFormat f=new java.text.SimpleDateFormat("yyyy年MM月dd日 hh:mm:ss");                f.format(date); 时间格式语法: 使用一个 time pattern 字符串指定时间格式。 在这种方式下,所有的 ASCII 字母被保留为模式字母,定义如下:  符号     含义                    表示                示例
     ------   -------                 ------------        -------
     G        年代标志符              (Text)              AD
     y        年                      (Number)            1996
     M        月                      (Text & Number)     July & 07
     d        日                      (Number)            10
     h        时 在上午或下午 (1~12)  (Number)            12
     H        时 在一天中 (0~23)      (Number)            0
     m        分                      (Number)            30
     s        秒                      (Number)            55
     S        毫秒                    (Number)            978
     E        星期                    (Text)              Tuesday
     D        一年中的第几天          (Number)            189
     F        一月中第几个星期几      (Number)            2  (2nd Wed in July)
     w        一年中第几个星期        (Number)            27
     W        一月中第几个星期        (Number)            2
     a        上午 / 下午 标记符      (Text)              PM
     k        时 在一天中 (1~24)      (Number)            24
     K        时 在上午或下午 (0~11)  (Number)            0
     z        时区                    (Text)      Pacific Standard Time
     '        文本转义符              (Delimiter)
     ''       单引号                  (Literal)           '
     模式字母的数目决定了格式。  下面使一些实例:格式化模式                             结果
    --------------                         -------
    "yyyy.MM.dd G 'at' hh:mm:ss z"    ->>  1996.07.10 AD at 15:08:56 PDT
    "EEE, MMM d, ''yy"                ->>  Wed, July 10, '96
    "h:mm a"                          ->>  12:08 PM
    "hh 'o''clock' a, zzzz"           ->>  12 o'clock PM, Pacific Daylight Time
    "K:mm a, z"                       ->>  0:00 PM, PST
    "yyyyy.MMMMM.dd GGG hh:mm aaa"    ->>  1996.July.10 AD 12:08 PM 
    日期的解析相关类:    java.util.Calender;当你需要从java.util.Date中获取日期的不同字段时,比如说年,需要的到一个年的整型值,那么可能用getYear()方法,但是java的API中却不提常使用,而是使用Calenderl类来代替了,Calender是一个抽象类,不能实例化,只能使用getInstance()方法,具体使用如下:  获得年:              java.util.Date date=Date.valueOf("3000-12-12 12:12:12");             Calender c=Calender.getInstance();           //默然认是当前时间             c.setTime(date);             int year=c.get(YEAR);                            如果要修改日期,最好也使用Calender类。              日期的数据库操作相关类: java.sql.Date;java.sql.Time;java.sql.Timestamp; 它们都是java.util.Date类的子类,其中TImestamp最为常用。 所有类的关系如下图:   获取系统的当前时间方法很多,常用的就是如上的Calender c=c.getInstance();或Date,转换成字符串String则使用Date.valueOf(“”);即可。希望能给大家增加方便啊!
      

  5.   

    天啦!我又想到了!
    Date date1 = new SimpleDateFormat("yyyy-mm-dd HH:mm").parse("2009-02-27 08:30");
    Date date2 = new SimpleDateFormat("yyyy-mm-dd HH:mm").parse("2009-03-05 08:30");
      if(date1.compareTo(date2)>0){
      System.out.println("true");
      }