VB - 两个日期之间的差异
问题描述:
我试图找出两个日期之间的差异。两个日期中的第一个可以改变,当它改变时,原始日期之间的差异必须保留。这意味着我必须自动将第二个日期更改为与以前相同的天数,但是需要新的第一个日期。VB - 两个日期之间的差异
Public Sub New()
InitializeComponent()
currDate = txt_ProjStart.Text
End Sub
Private Sub txt_ProjStart_TextChanged.....
If txt_ProjEnd.Text.Length > 0 Then
Dim newDate As Date
newDate = txt_ProjStart.Text
Dim endDate As Date
endDate = txt_ProjEnd.Text
End If
我有旧的date1(currDate)和新的date1值(newDate)的值。我需要弄清这些差异,然后在endDate中加入或减去这些日子。
任何帮助将不胜感激!谢谢!
答
Dim newDate, endDate, someOtherDate As Date
If Date.TryParse(txt_ProjStart.Text, newDate) AndAlso _
Date.TryParse(txt_ProjEnd.Text, endDate) Then
Dim diff As TimeSpan = endDate - newDate
Dim result As Date = someOtherDate + diff
End If
日期和时间跨度自动转换为对方。另外,使用安全日期转换是个好主意。如果日期无效,TryParse
不会生成异常。相反,它会返回False
。
DateTime.Parse(txt_ProjectEnd.Text) - DateTime.Parse(txt_ProjectStart.Text) – kenny 2012-02-28 12:13:57
您可以通过减去日期来获得TimeSpan - 然后将它们添加回第一个(更改的)日期以获得另一个日期相同的区别 - 我想你会得到*算法*自己工作;) – Carsten 2012-02-28 12:14:01