Работа со временем (не могу решить задачку...)

Sergey9966
Дата: 06.11.2018 22:02:59
В общем - задачка простая относительно. Но с никогда ничего не писал для работы в разных часовых поясах и тут начались проблемы... Замучался в некотором смысле... То есть получается у меня в Японии +8GTM, открывается магазин в 10:00 часов значит. Мне нужно в Канаде, где -5GTM вычислить и выдать:

1. Сколько до этого события осталось времени в Канаде
2. Учитывая, что я вообще в МСК - знать когда это все будет по Московскому времени... Ну то есть написать, когда в МСК случится...

Вроде бы все просто, но я уже голову поломал. Пишу на C# (только начал), ну и на php (в принципе) - просьба на JAVA не писать сложно, у меня от самой задачки мозги в кучу... :(
Dima T
Дата: 07.11.2018 07:34:35
Используй UTC

DateTime.UtcNow
fixxer
Дата: 07.11.2018 11:21:22
На джаве, но не сложно

        // Локальное время открытия
        LocalTime openTime = LocalTime.of(10, 00);
        
        // Сегодня в Токио
        ZonedDateTime tokyoTime = ZonedDateTime.of(openTime.atDate(LocalDate.now()), ZoneId.of("Asia/Tokyo"));
        System.out.println(tokyoTime);
        
        // В Москве
        ZonedDateTime moscowTime = tokyoTime.withZoneSameInstant(ZoneId.of("Europe/Moscow"));
        System.out.println(moscowTime);

        // В Торонто
        ZonedDateTime torontoTime = tokyoTime.withZoneSameInstant(ZoneId.of("America/Toronto"));
        System.out.println(torontoTime);


2018-11-07T10:00+09:00[Asia/Tokyo]
2018-11-07T04:00+03:00[Europe/Moscow]
2018-11-06T20:00-05:00[America/Toronto]
clihlt
Дата: 07.11.2018 12:16:23
Sergey9966
1. Сколько до этого события осталось времени в Канаде


В Канаде до этого события осталось столько же сколько и в Токио, т.к. время течет с одинаковой скоростью во всех часовых поясах.
Sergey9966
Дата: 07.11.2018 13:35:48
fixxer,

Спасибо, выглядит очень красиво и лаконично... Нужно только чуть понять что в это JAVA все это значит, кажется считанные пара методов. Аж не верится, что это так может быть вообще коротко.
Sergey9966
Дата: 07.11.2018 13:38:33
Dima T,
Так и начала делать - решил что сделаю массив просто и буду по нему ходить, т.к. уже совсем не мог понять расчеты с датами. Ладно еще один часовой пояс, но тут у меня все сошло с привычного понимания. Может ездил бы я 10 раз в год в командировку - легко бы ориентировался.

То есть задача совсем не тривиальна для меня, в силу отсутствия представления об этом...