例如:已知了2011-10-3 15:12:30 的毫秒值,要得到4天前9:00 的时间的毫秒值。

解决方案 »

  1.   

    Calendar c=Calendar.getInstance();
    System.out.println(c.getTime());
    c.add(c.DATE, -4);
    c.set(c.HOUR_OF_DAY, 9);
    c.set(c.MINUTE, 0);
    c.set(c.SECOND, 0);
    System.out.println(c.getTime()+"--"+c.getTimeInMillis());
      

  2.   

    楼主同学自己查下Calendar的方法,一看就知道了。有个setTimeInMillis的方法。
      

  3.   

    public class TimeUtil { public static Long sendMessageTime(Long followTime, int day, int hour) { Calendar c = Calendar.getInstance();
    c.setTimeInMillis(followTime);
    c.add(Calendar.DATE, -day);
    c.set(Calendar.HOUR_OF_DAY, hour);
    c.set(Calendar.MINUTE, 0);
    c.set(Calendar.SECOND, 0);
    System.out.println(c.getTime() + "------------" + c.getTimeInMillis()); return c.getTimeInMillis();
    }

    /** 测试 */
    public static void main(String[] args) {
    Calendar c1 = Calendar.getInstance();
    Long time = MessageTimeUtil.sendMessageTime(c1.getTimeInMillis(),20, 22);
    System.out.println(time);
    }
    }
      

  4.   

    public class MessageTimeUtil { public static Long sendMessageTime(Long followTime, int day, int hour) { Calendar c = Calendar.getInstance();
    c.setTimeInMillis(followTime);
    c.add(Calendar.DATE, -day);
    c.set(Calendar.HOUR_OF_DAY, hour);
    c.set(Calendar.MINUTE, 0);
    c.set(Calendar.SECOND, 0);
    System.out.println(c.getTime() + "------------" + c.getTimeInMillis()); return c.getTimeInMillis();
    }

    /** 测试 */
    public static void main(String[] args) {
    Calendar c1 = Calendar.getInstance();
    Long time = MessageTimeUtil.sendMessageTime(c1.getTimeInMillis(),20, 22);
    System.out.println(time);
    }
    }