【发布时间】:2013-05-21 05:07:51
【问题描述】:
我正在尝试使用来自apache-commons3 的DateUtils,但无法理解它依赖于哪个时区:
Date date = DateUtils.truncate(date, Calendar.DATE);
它怎么知道我在哪个时区?
【问题讨论】:
标签: java apache-commons
我正在尝试使用来自apache-commons3 的DateUtils,但无法理解它依赖于哪个时区:
Date date = DateUtils.truncate(date, Calendar.DATE);
它怎么知道我在哪个时区?
【问题讨论】:
标签: java apache-commons
您计算机的默认时区。查看source code,它是这样做的:
public static Date truncate(Date date, int field) {
if (date == null) {
throw new IllegalArgumentException("The date must not be null");
}
Calendar gval = Calendar.getInstance();
gval.setTime(date);
modify(gval, field, MODIFY_TRUNCATE);
return gval.getTime();
}
Calendar.getInstance() 的文档说:使用默认时区和语言环境获取日历。
如果您愿意改用 JodaTime,可以在 JodaTime 中做同样的事情:JodaTime equivalent of DateUtils.truncate()
【讨论】: