Как разобрать DateTime из строки - PullRequest
0 голосов
/ 31 марта 2019

При чтении DateTime из Excel день и месяц результата читаются как dd MM, а содержимое excel соответствует стилю MM dd.

S1 содержит: «12/09/2017»

Код:

Dim t_from As DateTime
t_from = CDate(s1)

t_from включает сентябрь как месяц, а не декабрь, как должно быть.

Я тоже пробовал:

Dim b As Boolean = DateTime.TryParseExact(s1,                                  "MM/dd/yy",
System.Globalization.CultureInfo.InvariantCulture,
Globalization.DateTimeStyles.None,dt)

этот код завершается ошибкой (строка не была распознана как действительный DateTime)

Как преобразовать текст в переменную DateTime VB в соответствии с первым месяцем (до даты)?

1 Ответ

1 голос
/ 31 марта 2019

Формат "М / д / гггг ч: м: с тт" должен правильно анализировать даты из Excel

Dim parsedDate As Date
Date.TryParseExact(
    "9/12/2017 12:00:00 AM",
    "M/d/yyyy h:m:s tt",
    Globalization.CultureInfo.InvariantCulture,
    Globalization.DateTimeStyles.None,
    parsedDate)

parsedDate.ToString() ' 12.09.2017 00:00:00

Для "12/09/2017", где 12 - месяц, а 09 - день, используйте формат: "MM / dd / yyyy"

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