Чтобы преобразовать дату из одного часового пояса в другой на разных языках программирования, вы можете использовать разные библиотеки и функции. Вот примеры на трёх популярных языках: Python, JavaScript и Java.
Python:
from datetime import datetime
import pytz
def convert_timezone(date, from_tz, to_tz):
from_timezone = pytz.timezone(from_tz)
to_timezone = pytz.timezone(to_tz)
localized_date = from_timezone.localize(date)
converted_date = localized_date.astimezone(to_timezone)
return converted_date
JavaScript:
function convertTimezone(date, fromTz, toTz) {
const fromDate = new Date(date);
const fromOffset = fromDate.getTimezoneOffset() * 60000;
const fromUTC = fromDate.getTime() + fromOffset;
const toOffset = new Date().getTimezoneOffset() * 60000;
const toUTC = fromUTC + toOffset;
const convertedDate = new Date(toUTC);
return convertedDate;
}
Java:
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.time.ZonedDateTime;
public class TimezoneConverter {
public static LocalDateTime convertTimezone(LocalDateTime date, String fromTz, String toTz) {
ZoneId fromZone = ZoneId.of(fromTz);
ZoneId toZone = ZoneId.of(toTz);
ZonedDateTime fromZdt = ZonedDateTime.of(date, fromZone);
ZonedDateTime toZdt = fromZdt.withZoneSameInstant(toZone);
return toZdt.toLocalDateTime();
}
}
Для всех приведенных выше примеров параметр dateпредставляет входную дату, fromTzпредставляет исходный часовой пояс, а toTzпредставляет целевой часовой пояс.. Функции возвращают преобразованную дату в целевом часовом поясе.