无法使用Joda-Time库正确计算时差?

时间:2014-06-07 06:56:49

标签: java datetime timezone

我正在尝试计算特定日期和当前日期之间的时差 但是我无法使用Joda-Time库正确计算它。 这是我的代码

 DateTimeZone timeZoneBrazil = DateTimeZone.forID( "Brazil/East" );
    DateTime dateTimeBrazil = new  DateTime(timeZoneBrazil);
    DateTime matchDate = new DateTime(2014, 6, 12, 17, 0, 0,timeZoneBrazil);
    Period per = new Period(matchDate.toDateTime(timeZoneBrazil), dateTimeBrazil.toDateTime(timeZoneBrazil));

    hours=per.toStandardHours().getHours();
    minutes = per.toStandardMinutes().getMinutes()%60;
    seconds = per.toStandardSeconds().getSeconds()%60;
    game.font.draw(game.batch,hours+":"+minutes+":"+seconds, 20, (Gdx.graphics.getHeight() - 80*scale));

这给出了14个小时的时差。

现在我尝试了这种方式

 DateTimeZone timeZoneBrazil = DateTimeZone.forID( "Brazil/East" );
    DateTime dateTimeBrazil = new  DateTime();
    DateTime matchDate = new DateTime(2014, 6, 12, 17, 0, 0);
    Period per = new Period(matchDate.toDateTime(timeZoneBrazil), dateTimeBrazil.toDateTime(timeZoneBrazil));

    hours=per.toStandardHours().getHours();
    minutes = per.toStandardMinutes().getMinutes()%60;
    seconds = per.toStandardSeconds().getSeconds()%60;
    game.font.draw(game.batch,hours+":"+minutes+":"+seconds, 20, (Gdx.graphics.getHeight() - 80*scale));

这给我一个5小时30分钟的时差。我尝试了很多其他的组合,但没有一个在这里有什么问题。我来自印度,GMT +5:30。

0 个答案:

没有答案