我试图在两次之间找到时间范围并计算午夜时差。
例如:
StartDate1 : 13/02/2013 21.00
EndDate1: 13/02/2013 22.00.
StartDate2 : 13/02/2013 23.00
EndDate2: 14/02/2013 01.00.
1) am trying to find the time range, it falls in to midnight first ?
2) If yes then how much time difference from Midnight
e.g Day1= 2hrs (prior to midnight)
Day2= 1hr (after midnight).
请帮忙吗?
我正在看这个问题,但不确定TimeFrame
答案 0 :(得分:2)
试试这个。
DateTime startTime = DateTime.Parse("13/02/2013 22.00");
DateTime endTime = DateTime.Parse("14/02/2013 01.00");
TimeSpan span = endTime.Subtract ( startTime );
Console.WriteLine( "Time Difference (seconds): " + span.Seconds );
Console.WriteLine( "Time Difference (minutes): " + span.Minutes );
Console.WriteLine( "Time Difference (hours): " + span.Hours );
Console.WriteLine( "Time Difference (days): " + span.Days );
答案 1 :(得分:2)
要查明时间之间是否有午夜,只需检查日期是否不同:
if (startDate1.Date != endDate1.Date) {
// there is at least one midnight between the times
}
如果您知道日期之间的午夜时间不会超过一个,那么endDate1.Date
就是那个午夜的时间。您可以使用以下方式获取午夜之前和之后的时间:
TimeSpan before = endDate1.Date - startDate1;
TimeSpan after = endDate1 - endDate1.Date;
答案 2 :(得分:0)
TimeSpan span = endTime - startTime;
Console.Writeline(“Span:”+ span);
Console.Writeline(“Seconds:”+ span.TotalSeconds);