我有两个来自 Android 应用程序的 ISO 8601 格式的字符串,我试图找到两个时间之间的分钟数。有人向我推荐了 Joda Time,它非常有帮助。然而我现在发现一个字符串是 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();
最佳答案
How do I go about to change the UTC time to my local time in order to get an accurate minutes in between?
我的理解是你不需要。
DateTime 实例表示时间线上的一个点,以及控制时间点如何映射到时间范围的时区(例如,当您调用 getter 时)。当您计算一对 DateTime
实例之间的时间差时,您会得到一个表示时间轴上两点之间的持续时间的度量。这与时区无关。
换句话说,假设两个 DateTime
实例已正确创建,您的代码应该按原样运行。
关于java - 想要通过 joda 获取两个不同时区的两个 ISO 8601 时间之间的分钟数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10544815/