如何从另一个日期时间减去日期时间?

问题描述:

如何从另一个DateTime值中减去两个DateTime值并将结果保存为double?如何从另一个日期时间减去日期时间?

+6

结果?蜱?秒?任何示例输入/输出? – BoltClock 2011-03-03 05:27:58

+0

这是什么应该是减法后的输出 – Dotnet 2011-03-03 05:28:14

在.NET中,如果你减去另外一个DateTime对象,你会得到一个TimeSpan对象。然后,您可以使用该TimeSpan对象上的Ticks属性来获取两个DateTime对象之间的滴答数。但是,蜱将由Long代表,而不是Double

DateTime date1; 
DateTime date2; 
Long diffTicks = (date2 - date1).Ticks; 

有是TimeSpan对象像TotalMillisecondsTotalMinutes之类的东西,它可以帮助你出来,可能会更你在找什么其他有趣的特性。

我认为这是你需要的。

DateTime d1 = DateTime.Now; 
DateTime d2 = DateTime.UtcNow; 

var result = d1 - d2; 

double dResult = result.Ticks; 

DateTime startTime = DateTime.Now; 
DateTime endTime = DateTime.Now.AddSeconds(75); 
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); 

你应该试试这个。

DateTime prevDate = DateTime.Parse("25-Feb-2011 12:30"); 
double subDouble = DateTime.Now.Ticks - prevDate.Ticks; 

使用DateTime.Subtract它将返回TimeSpan,然后使用Double类型结果的TotalSeconds属性。

我不知道什么是你想要存储 如果你需要在什么时间单元双

double difference = date2.ToOADate() - date1.ToOADate();