我需要计算两次之间的时差 开始时间是从04:30:Pm到12:30 AM Employee IN时间为08:30 AM,然后显示错误消息时间已过期
我尝试过的事情:
dtShifTime = Convert.ToDateTime("16:30").ToString("HH:mm")
Dim dtEntryTime As DateTime = Convert.ToDateTime("08:30").ToString("HH:mm")
If lblStartTime.Text <> "" And (dtLateTime < dtEntryTime) Then
MBox("Time Expired")
End IF
答案 0 :(得分:0)
通过调用ToString,可以将DateTime对象转换为String。然后将其保存到DateTime变量中。
我不知道您要做什么,但是要减去两次之间的差,只需将它们相减即可。
Dim dtStart As DateTime = new DateTime(year:= 1, month := 1, day:= 1, hour:= 8, minute:= 30, second := 0)
Dim dtEnd As DateTime = new DateTime(year:= 1, month := 1, day:= 1, hour:= 20, minute:= 0, second := 0)
Dim tsDiff As TimeSpan = dtEnd - dtStart
Console.WriteLine(tsDiff.ToString())
我建议您阅读文档以了解要使用的内容。 DateTime和TimeSpan。
如果确实需要使用字符串作为输入,则可以使用DateTime.Parse(),ParseExact或TryParse parse代替构造函数,如果可能,应避免使用该字符串。
除此之外,您还应该进行一些基本的搜索和研究。例如,这是第一次匹配:Get time difference between two timespan in vb.net,当搜索“时差vb.net”
时