How to calculate hours between 2 different dates i

2019-09-19 16:00发布

问题:

I have been building a program where i need to calculate the difference between different dates....... its a network outage program i want to calculate down time between different dates e.g network was down on 08/06/2013 9:00 AM and was restored on 09/06/2013 10:00 PM.... the down time should be 34 hours......... i have been able to calculate the days but i want this in hour format so anyone please help me............. i m using datetimePicker to get the date and time at the same time.

i have been using the below mentioned code for that purpose

dateTimePicker1.Format = DateTimePickerFormat.Custom;


dateTimePicker1.CustomFormat = " dd/MM/yyyy hh:mm tt ";


dateTimePicker2.Format = DateTimePickerFormat.Custom;


dateTimePicker2.CustomFormat = " dd/MM/yyyy hh:mm tt "; 



ts1 = dt2.Subtract(dt1);


 richTextBox1.Text = "The Hours Difference is:\t" + dt2.Subtract(dt1).Hours + "\n The Minute Difference is:\t" + dt2.Subtract(dt1).Minutes;

回答1:

You can use the .Net timespan class for this.

System.DateTime firstDate = new System.DateTime(2006, 9, 13, 12, 0, 0);
System.DateTime SecondDate = new System.DateTime(2006, 9, 13, 0, 0, 0);
System.TimeSpan diffResult = firstDate.Subtract(SecondDate);

diffResult will contain all the differences in firstDate and secondDate in year, month, day, hour, minutes and seconds.

You can get any datepart from this:

diffResult.Days
diffResult.Hours
diffResult.Minutes
etc.


回答2:

You need

dt2.Subtract(dt1).TotalHours

and

dt2.Subtract(dt1).TotalMinutes