Joda Time - отличается от часовых поясов

Я хочу преобразовать текущее время в определенное время в конкретный часовой пояс с временем в Joda.

Есть ли способ конвертировать DateTime time = new DateTime() в конкретный часовой пояс или, возможно, для того, чтобы получить число разностей часов между time.getZone() и другим DateTimeZone, чтобы сделать time.minusHours или time.plusHours?

Ответ 1

Я хочу преобразовать текущее время в время в определенном часовом поясе с временем Joda.

Не совсем понятно, есть ли у вас текущее время или нет. Если вы уже получили его, вы можете использовать с withZone:

DateTime zoned = original.withZone(zone);

Если вы просто выбираете текущее время, используйте соответствующий конструктор:

DateTime zoned = new DateTime(zone);

или используйте DateTime.now:

DateTime zoned = DateTime.now(zone);

Ответ 2

Проверьте DateTimeZone & Interval:

DateTime dt = new DateTime();
    // translate to London local time
    DateTime dtLondon = dt.withZone(DateTimeZone.forID("Europe/London"));

Интервал:

Interval interval = new Interval(start, end); //start and end are two DateTimes