VB.NET сравнить дату и время из строкового формата - PullRequest
0 голосов
/ 29 июня 2018

У меня есть эта строка: 28 June 2018 (22:05)

Как я могу сравнить его с моим текущим временем и получить разницу?

Например, если фактическое время было 29/06/2018 (05:49)

Разница будет: 7 hours 44 minutes

Итак, ввод: 28 June 2018 (22:05) Выход: 7 hours 44 minutes

1 Ответ

0 голосов
/ 29 июня 2018

Первое, что вам нужно сделать, - преобразовать строку в действительный экземпляр DateTime.

Если вы знаете, что ваши даты всегда будут в этом формате, вы можете сделать следующее ...

Dim mydate = DateTime.ParseExact("28 June 2018 (22:05)", "dd MMMM yyyy (HH:mm)", CultureInfo.InvariantCulture)

https://msdn.microsoft.com/en-us/library/w2sa9yss(v=vs.110).aspx

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

Я бы сначала понял разницу в минутах, вот так ...

Dim diffminutes = DateDiff(DateInterval.Minute, mydate, Now)

Затем создайте временной интервал, подобный этому ...

Dim mytimespan = TimeSpan.FromMinutes(diffminutes)

Наконец, отобразите разницу в часах и минутах, как это ...

Response.Write(mytimespan.ToString("hh\:mm"))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...