我有两个long
s 代表自纪元以来的时间。他们都有相同的时区。我想找出这两次之间的秒数差异,尊重日光节约。
(def a (java.util.Date. 1259568796000)) ;; Before Day Light Savings
(def b (java.util.Date. 1255147200000)) ;; After Day Light Savings
“a”在哪里2009-11-30T08:13:16.000-00:00
和
“b”在哪里2009-10-10T04:00:00.000-00:00
使用 JodaTime,我可以Interval
将这两次制作出来,将它们变成Duration
,然后得到StandardSeconds
.
(.getStandardSeconds (.toDuration (Interval. a b)))
但这不起作用,因为 docs forPeriod
表明这Duration
会弄乱日光节约:
当这个时间段加到一个瞬间时,效果就是依次添加每个字段。因此,这会考虑夏令时。将 1 天的时间段添加到夏令时开始的前一天只会增加 23 小时而不是 24 小时,以确保时间保持不变。如果这不是您想要的行为,请参阅持续时间。
我怎样才能完成这项任务?