我正在从数据库中提取日期和时间。它们存储在单独的字段中,但我想将它们组合成一个适当地反映日期/时间的 java.util.Date 对象。
这是我最初的方法,但它有缺陷。我总是得到一个比它应该是 6 小时的日期/时间。我认为这是因为 Time 和 Date 都有时区偏移量,而我真的只需要其中一个来获得时区偏移量。
有关如何执行此操作的任何建议,以便为我提供正确的日期/时间?
import java.sql.Time;
import java.util.Calendar;
import java.util.Date;
import org.apache.commons.lang.time.DateUtils;
public static Date combineDateTime(Date date, Time time)
{
if (date == null)
return null;
Date newDate = DateUtils.truncate(date, Calendar.DATE);
if (time != null)
{
Date t = new Date(time.getTime());
newDate = new Date(newDate.getTime() + t.getTime());
}
return newDate;
}