2

我正在尝试使用DateUtilsfrom apache-commons3,但无法理解它依赖于哪个时区:

Date date = DateUtils.truncate(date, Calendar.DATE);

它怎么知道我在哪个时区?

4

1 回答 1

5

您计算机的默认时区。查看源代码,它是这样做的:

    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 等效于 DateUtils.truncate()

于 2013-05-20T21:02:15.277 回答