想要在joda的两个不同时区获得两次ISO 8601次的分钟

时间:2012-05-11 02:56:05

标签: java android jodatime iso8601

我有两个来自ISO 8601格式的Android应用程序的字符串,我试图找到两次之间的分钟数。我被指向了Joda Time,它非常有帮助。但是我现在发现一个String是UTC时间而另一个是我当地时间。

例如 “2012-05-11T02:34:18 + 00:00”是UTC和 “2012-05-10T21:44:09-05:00”是我当地时间

我有以下代码块,它找到两次之间的分钟数。我的问题是我如何才能将UTC时间更改为当地时间,以便在两者之间获得准确的分钟数

DateTime start = new DateTime(currentTime);
DateTime end = new DateTime(laterTime);
int min = Minutes.minutesBetween(start,end).getMinutes();

1 个答案:

答案 0 :(得分:2)

  

如何将UTC时间更改为当地时间,以便在两者之间获得准确的分钟数?

我的理解是你不需要。

DateTime实例表示时间线上的一个点,以及控制时间点如何映射到时间范围的时区(例如,当您调用getter时)。当您在一对DateTime实例之间取一个时间差时,您会得到一个度量,表示时间轴上两点之间的持续时间。这与时区无关。

换句话说,假设正确创建了两个DateTime实例,您的代码应该按原样运行。