0

有没有办法只更新日期的时间路径?我试过Date.setTime()了,但它也替换了日期路径。我有任何java方法或唯一的方法是设置小时,分钟,秒和毫秒?

谢谢

4

3 回答 3

4

JavaDate只是long从纪元(1970 年 1 月 1 日)开始计算时间的 a 的包装器。更灵活的是Calendar. 您可以Calendar从 a创建一个Date

Date date = . . .;
Calendar cal = new GregorianCalendar();
cal.setTime(date);

然后您可以设置的各个字段Calendar

cal.set(Calendar.HOUR_OF_DAY, 8);
// etc.
于 2012-11-02T07:16:23.520 回答
3

我会从java.util.Date完全远离。理想情况下,使用Joda Time,因为它是一个功能强大的日期/时间库。

否则,您应该使用java.util.Calendar. 您决定您感兴趣的时区之前,Ajava.util.Date没有特定的日期/时间 - 它只代表一个瞬间,世界各地的不同人会认为这是一天中不同的日期和时间。

于 2012-11-02T07:15:58.207 回答
1

你会想看看java.util.Calender

它将允许您更改日期/时间的各个部分。

Calendar cal = Calender.getInstance();
cal.setTime(date);
cal.set(Calender.HOUR, hour);

或者,正如已经建议的那样,我会看看Joda Time

于 2012-11-02T07:20:03.417 回答