String str = "2002-6-24 10:23:46.000"
Date day = new Date( str );
str = day.setDate( day.getDate() + 1 ).toLocaleString() ;

解决方案 »

  1.   


    Date dt = new SimpleDateFormat("yyyy-MM-dd H:m:s:S").parse(sTransactionDate))long lgTime = dt.getTime();
    lgTime += 24*60*60*1000;Timestamp  ts = new Timestamp(lgTime);
    String newDate = new SimpleDateFormat("yyyy-MM-dd H:m:s:S").format(ts);
      

  2.   

    另外请问一下,两个时间的差值怎么比呢?
    即:
    String str = "2002-6-24 10:23:46.000";
    String str1 = "2002-6-23 09:23:46.000";str - str1应该为多少呢?能得到时间段么?
      

  3.   

    str - str似乎是不可能的,
    同样还是转为Date对象后进行处理。
      

  4.   

    我试了一下 xiaoxiangyy(潇湘夜雨)的方法String str = "2002-6-24 10:23:46.000"(有错:改为"2002/6/24"通过)
    Date day = new Date( str );
    str = day.setDate( day.getDate() + 1 ).toLocaleString() ;(.toLocaleString() 不行:改为
    day.setDate( day.getDate() + 1 );
    str = day.toString() ;通过

      

  5.   

    我没试,但我觉得这种方法有一个bug,就是当日期为每个月的最后一天时,day.setDate( day.getDate() + 1 );
    这一句是否会得到非期望的结果呢?
      

  6.   

    我想,这么做能好一些:
    java.sql.Timestamp time = java.sql.Timestamp.valueof("2002-06-24 10:23:46.000");
    java.util.Date date = new java.util.Date(time.getTime() + 1000 * 60 * 60 * 24);
    String str = date.tostring();