将JodaTime持续时间转换为Java 8时间持续时间:getStandardMinutes和其他方法

问题描述 投票:2回答:2

由于我们所在的时区有些怪异,我们正在尝试将使用Joda-Time库编写的产品转换为Java时间。 (夏令时DST从未保持一致,并且Joda-Time需要特殊的操纵并使用偏移量才能使其正常工作。)]

我正在使用Joda-Time的Duration。有许多方法,例如Duration

在Java 8+getStandardMinutesgetStandardMinutes上是否有一种简单的方法来实现相同的功能?我假设基于代码和注释,java.time不一定会返回所需的值。

由于我们所在的时区有些怪异,我们正在尝试将使用Joda-Time库编写的产品转换为Java时间。 (夏令时DST永远都不一致,并且Joda-Time ...

java jodatime java-time
2个回答
4
投票

在Java 8的Duration类中,持续时间不包含参考日期。因此,您要提取的所有分钟都是标准分钟。在JodaTime中,Duration的注释明确指定持续时间采用默认的一天长度(24h / day,60min / hour,60sec / min ...)。但这仅是相关的,如果您想将持续时间应用于参考(日期)时间(例如,将此Duration::toMinutes添加到此Duration::toMinutes),在这种情况下,将日期添加到“天”夏令时可能会产生意想不到的影响(例如小时偏移)。但是,对于Duration对象而言,这无关紧要,因为它有效地表示了“实时”中以纳秒为单位的持续时间,而忽略了时区等。


2
投票

DateTime =纳秒数

© www.soinside.com 2019 - 2024. All rights reserved.