若要计算二个日期经过几月又几天,需要考虑期间每个月份的天数,每个月的天数是不一样的。
所以我们可以先计算经过几个月,然后把起始日期累加异差月份数,再计算差异天数。
所以我们可以先计算经过几个月,然后把起始日期累加异差月份数,再计算差异天数。
Dim oDate1 As Date = Date.Parse("2008/5/1")
Dim oDate2 As Date = Date.Parse("2008/7/10")
'先算月份
Dim iMonths As Integer = DateDiff(DateInterval.Month, oDate1, oDate2)
'再算天数
Dim iDays As Integer = DateDiff(DateInterval.Day, DateAdd(DateInterval.Month, iMonths, oDate1), oDate2)
MsgBox(String.Format("经过{0}月{1}天", iMonths, iDays))
Dim oDate2 As Date = Date.Parse("2008/7/10")
'先算月份
Dim iMonths As Integer = DateDiff(DateInterval.Month, oDate1, oDate2)
'再算天数
Dim iDays As Integer = DateDiff(DateInterval.Day, DateAdd(DateInterval.Month, iMonths, oDate1), oDate2)
MsgBox(String.Format("经过{0}月{1}天", iMonths, iDays))