Ros*_*wal 2 java java.util.calendar
我有一个日历对象[localDate],它位于美国东部时间:比如11月6日,15:34 ......我将时区设置为格林尼治标准时间+5:30 ......现在,当我这样做时,Calendar.HOUR_OF_DAY它返回给我2 ...我知道是完美的..从格林威治标准时间15:34 + 5小时到时区+5:30到达时区..这只是意味着26:04这是第7个中的第2个.
然而,日期仍然保持11月6日... localDate.getTime()仍然返回11月6日...甚至当我打印localDate ..它显示时区为+5:30,但是那天和其他一切仍然是原来的本地时间.. [即11月6日]
我根本无法理解为什么......
编辑::
所以我知道我不需要更改日期和时区.只更改显示适合该位置的日期的方式,并且可以使用已设置的时区完成.
localDate.getTime() 返回一个java.util.Date自固定点以来的原始时间量.时区仅影响时间点的人类可读表示.
15:34 Nov 6th UTC - 5
和
02:04 Nov 7th UTC + 5:30
绝对时间都是完全相同的点.这只是描述同一瞬间的两种不同的人类方式.
因此,更改日历上的时区对返回的值没有影响 getTime()
| 归档时间: |
|
| 查看次数: |
599 次 |
| 最近记录: |