从DateTime(Joda Time)到Date(java.util)的转换

时间:2011-12-02 14:34:52

标签: datetime date jodatime

我将此日期“22/11/11”解析为名为s的DateTime对象。当我做s.getDayOfMonth()时,它给了我22这是对的。但是,当我将DateTime对象转换为Date对象并尝试使用s.toDate()。getDate()获取日期时,它返回24,这是不对的。有谁知道为什么会这样?

1 个答案:

答案 0 :(得分:6)

Joda-Time DateTime.toDate()方法转换为具有相同毫秒时刻的java.util.Datejava.util.Date.getDate()方法使用本地默认时区返回其值,而DateTime.getDayOfMonth()使用存储在DateTime对象中的时区。如果两个时区不同,您可能会看到差异,解释您观察到的22/24。

要进一步了解,请打印DateTime的时区以及TimeZone.getDefault()使用的默认Java区java.util.Date