Учитывая DateTime в CEST (Германия), необходимо знать время EST (включая DST) - PullRequest
0 голосов
/ 24 апреля 2018

Я пишу службу C # для Windows, которая открывает текстовый файл со столбцом даты и времени.Оба из них находятся в CEST время в Германии.Мне нужно знать, что это время в EST.Я не знаю, как учитывать летнее время с обеих сторон.Может ли кто-нибудь, пожалуйста, направить меня с этим?Я понятия не имею, как.

lsRetrievedDateTime = cellvalues[10] + " " + cellvalues[11];
ldRetrievedDateTimeCEST = DateTime.ParseExact(MyDateString, "M/dd/yyyy H:mm:ss", null);

//  ldRetrievedDateTimeCEST is actually Germany time and we need to convert it to EST.

1 Ответ

0 голосов
/ 24 апреля 2018

Вы можете использовать TimeZoneInfo и DateTimeOffset

lsRetrievedDateTime = cellvalues[10] + " " + cellvalues[11];
ldRetrievedDateTimeCEST = DateTime.ParseExact(MyDateString, "M/dd/yyyy H:mm:ss", null)    
//Create a TimeZoneInfo Object and set TimeZone
var info = TimeZoneInfo.FindSystemTimeZoneById("Eastern Standard Time");
//Create DateTimeOffSet object with TimeZoneInfo and DateTime as parameters.

DateTimeOffset est_time = TimeZoneInfo.ConvertTime(ldRetrievedDateTimeCEST , info);

//Now you can use est_time

MessageBox.Show(est_time.ToString()); //will return EST time.

Для разных часовых поясов вы можете проверить этот вопрос

Удачи.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...