Calculate difference between two dates in form `X years, Y months, Z week, A day`
本问题已经有最佳答案,请猛点这里访问。
Possible Duplicate:
How to get difference between two dates in Year/Month/Week/Day?
我如何计算到目前为止的精确差异,包括年、日、月、周。就像Windows计算器一样。?
像这样代表
我不相信.NET本身有什么有用的功能。
你可以用noda时间,但还没有完全完成。周期计算部分可能会进一步改变…我还不确定。如果您想要NODA时间代码示例,请告诉我。
也要注意,使用日期的算术运算从根本上是很复杂的。有时很难找出正确的答案…
在msdn上找到这个对于您的案例,您可以使用第一个方法
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | System.DateTime date1 = new System.DateTime(1996, 6, 3, 22, 15, 0); System.DateTime date2 = new System.DateTime(1996, 12, 6, 13, 2, 0); System.DateTime date3 = new System.DateTime(1996, 10, 12, 8, 42, 0); // diff1 gets 185 days, 14 hours, and 47 minutes. System.TimeSpan diff1 = date2.Subtract(date1); // date4 gets 4/9/1996 5:55:00 PM. System.DateTime date4 = date3.Subtract(diff1); // diff2 gets 55 days 4 hours and 20 minutes. System.TimeSpan diff2 = date2 - date3; // date5 gets 4/9/1996 5:55:00 PM. System.DateTime date5 = date1 - diff2; |
http://msdn.microsoft.com/en-us/library/8ysw4sby(v=vs.80).aspx y913
试试这个。
1 2 | TimeSpan span = endDate - startDate; //span.TotalDays gives days |
至于几个月、几年和几周,我们想知道你是需要一个