Мой код получает time_t из внешнего источника.Однако время time_t не основано на времени эпохи UTC, а вместе с ним я получаю строку часового пояса (например, EDT, PST и т. Д.), Основанную на этой смещенной эпохе.Мне нужно преобразовать это время в истинную UTC Epoch time_t.
Кроме того, мне нужно иметь возможность идти в противоположном направлении, беря time_t на основе UTC Epoch и часовой пояс, и создать смещенное time_t, нов этой ситуации вместо часового пояса (например, EDT / PST) и т. д. у меня есть описание часового пояса в стиле Unix, например, «Америка / Нью-Йорк», и мне нужно преобразовать его в правильный часовой пояс, учитывая летнее время, поэтому мне нужно вернутьсяиз алгоритма, как смещение time_t, так и правильный дескриптор (EDT, EST).
Я почти уверен, что смогу справиться с этим, временно изменив tzset () и некоторую комбинацию преобразований между разбивкойtime, time_t и timeval, но от этого всегда у меня болит мозг, и я чувствую, что упускаю что-то очевидное.Кто-нибудь может порекомендовать какой-нибудь код или sudo-код для этого или хотя бы правильный подход?