VB.net では、Murach の Visual Basic 2010 を通じて学習してきました。時間と文字列の処理方法を学習するときに、タイムスパンに関する問題に遭遇しました。
2 つの日付を取り、それらの間の日数を見つける必要があります。
だから私は自分の変数を宣言しました。
Dim currentDay As Date
Dim futureDate As Date
Dim timespan As TimeSpan = currentDay.Subtract(futureDate)
Dim strMsgText As String
Dim daysUntilDue = timespan.Days
次に、 currentDay と futureDate のフォーマットを設定します
currentDay = Convert.ToDateTime(Now)
futureDate = Convert.ToDateTime(txtFutureDate.Text) 'input from user
次に、表示する必要があるデータを設定します
strMsgText = "Current Date: " & currentDay.ToShortDateString() _
& "Future Date: " & futureDate.ToShortDateString() _
& "Days Util Due " & daysUntilDue
次に、データ検証を提供しました
If IsDate(txtFutureDate.Text) Then
futureDate = CDate(txtFutureDate.Text)
End If
最後にデータを表示します
MessageBox.Show(strMsgText)
構文のエラーやvb ideからのエラーは発生しませんが、日付を計算すると、メッセージボックスにこれが表示されます
元。
Current Date: 3/30/2013
Future Date: 12/26/2013
Days Until Due: 0
計算で日付を反転しようとしました
元。代わりに、別の結果が得られるかどうかを確認するためだけcurrentDay.Subtract(futureDate)
に設定しました。futureDate.Subtract(currentDay)
しかし、残念なことに、それでも 0 になります。
これが結果であるために何か間違ったことをしていることは知っていますが、IDE/コンパイラでエラーが発生せず、本でアドバイスが得られないか、これを適切に機能させる方法がわからないため、それが何であるかを見つけることができません.