Android时差与joda时间

时间:2012-06-24 13:21:45

标签: android time jodatime

我有这个简单的代码,使用Joda-time 工作正常,但我有问题。
例如,它返回814分钟,代码是什么,没关系 但我希望结果不到60分钟,而不是814分钟 那么,我怎样才能转换814分钟以得到我想要的结果呢?

小时也是如此。

谢谢。

代码:

int days = Days.daysBetween(new DateTime(today), new DateTime(StartTime1)).getDays();

int hours =Hours.hoursBetween(new DateTime(today), new DateTime(StartTime1)).getHours();

int minutes = Minutes.minutesBetween(new DateTime(today),new DateTime(StartTime1)).getMinutes();

2 个答案:

答案 0 :(得分:4)

我怀疑你问的是Joda-Time的错误问题。试着看一下Period类:

Period p = new Period(new DateTime(today), new DateTime(StartTime1), PeriodType.dayTime());
int days = p.getDays();
int hours = p.getHours();

Period将时间缩短为数天和数小时,正确处理夏令时(原始方法和手动%计算不会)。

答案 1 :(得分:1)

您有总分钟数,因此您需要将剩余的分钟数除以60分钟(假设您正在跟踪小时变量中的小时数):

minutes = minutes % 60;