Как узнать утра или вечера в вб
Я делаю свою систему активности dtr, и я хочу знать, как определить, является ли это или вечера? 7:00 - 12:30 должны идти в AM, и 13:00 - 17:00 - в PM.
например:
если время - 12:30 вечера, оно все еще идет к часу ночи, и если это - 12:31 вечера, это будет идти теперь к часу дня.
Dim hour As Date = TimeOfDay.ToString("hh:mm")
If hour <= "12:30" Then
isTimeAM_Exist() ' will go to am
Else
isTimePM_Exist() ' will go to pm
End If
в моем коде 4:00 вечера все еще идти в утра.
заранее спасибо
4 ответа
Решение
Вместо преобразования в строку работайте непосредственно со структурой DateTime и сравнивайте ее с правильным начальным значением
Dim now = Date.Now
If now < New DateTime(now.Year, now.Month, now.Day, 12, 00, 0) Then
'It's currently AM
Else
'It's currently PM
End If
Извините, когда я не понимаю ваш вопрос, но TimeOfDay имеет эту информацию:
Dim hour As Date = TimeOfDay
If hour.Hour >= 12 Then
' do whatever you like to do on afternoon
Else
' time to wake up
End If
должен был проверить это первым в моей идее
Это позволит вам определить ваши собственные "AM" и "PM":
' FormatDateTime(Now(), 4) gives 24-hour format (hh:mm)
If Hour(FormatDateTime(Now(), 4)) + Minute(FormatDateTime(Now(), 4))/60 <= 12.5 Then
' Is AM
Else
' Is PM
End If
Может быть, этот способ более эффективен
MsgBox(DateTime.Now.AddMinutes(-30).ToString("tt"))