vb.netで時間範囲をチェックする関数を実装しました。しかし、それは私に間違った出力を与えています。私の開始時間は毎日11.00Pmで、終了時間は5.00AMです。1.10 AMを通過した場合の私の関数は、これがその時間範囲に該当するため、真の出力を返しません。何が間違っているのかわからない。
Private Function CheckTimeRange() As Boolean
Dim retValue As Boolean = True
Try
Dim Dt As DateTime = DateTime.Now
Dim StartDt As DateTime = Convert.ToDateTime("11.00 PM")
Dim EndDt As DateTime = Convert.ToDateTime("5.00 AM")
Dim startTime As New TimeSpan(StartDt.Hour, StartDt.Minute, 0)
Dim endTime As New TimeSpan(EndDt.Hour, EndDt.Minute, 0)
Dim now As TimeSpan = DateTime.Now.TimeOfDay
If (now > startTime) AndAlso (now < endTime) Then
retValue = True
Else
retValue = False
End If
Return retValue
Catch ex As Exception
End Try
End Function