@Dealaxer

Как распознать формат даты и сравнить ее на VB.NET?

Есть сегодня файл и в нем есть строка с датой в формате 20190314, завтра в файле формат может смениться на 15032019 и все без разделителей.
Как можно распознать данные форматы,преобразовать, сравнить их и манипулировать ими.
Ну например, если имеем строковое значение 20190314, то надо преобразовать ее как то в дату и понять что это за формат и переделать его в 14032019, а если формат 15032019, то в 20190315.

Если бы у даты были разделители, то все решается просто, но у даты нет разделителей.
Подскажите куда копать?
  • Вопрос задан
  • 199 просмотров
Пригласить эксперта
Ответы на вопрос 1
2ord
@2ord
Формат даты, записанный в файле, зависит от того какие региональные настройки установлены на том компьютере, от которого пришел файл. В .NET можно парсить дату в зависимости от CultureInfo. Однако, в случае логов, XML/JSON или СУБД, может применяться стандарт ISO 8601 или ODBC canonical date.

В помощь:
DateTime.TryParseExact
DateTime.TryParse

https://docs.microsoft.com/en-us/dotnet/api/system...
https://tableplus.io/blog/2018/09/sql-server-date-...
https://www.itprotoday.com/sql-server/solving-date...

После того когда дата занесена в переменную типа DateTime, ее можно сравнивать с переменными того же типа.
Если формат даты неизвестен, то тогда остаётся лишь подбирать эвристически.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы