使用DateInterval.day混淆输出

时间:2014-03-20 06:51:35

标签: vb.net

我很困惑为什么我的代码没有一致地运行正确的输出,这是日期格式的计算。而我正在使用军事时间格式

  • 左数字代表小时数
  • 十进制代表分钟
  • 最后是dateformat

以2位数日格式运行的示例dd:

Input 1 is: 3.56
Input 2 is: 21.32 03/13/2014
Output is: 1.28 03/14/2014

以1位数日格式运行的示例d。当一天是单位错误输出时,我的问题是什么:

Input 1 is: 3.56
Input 2 is: 21.32 03/07/2014
Output is: 1.33 03/8/2014

这是我的代码:

 'if minutes reach 60            
If Val(TextBox7.Text.Trim.Split(".")(1)) >= 60 Then
  TextBox7.Text = Val(TextBox7.Text.Trim.Split(".")(0)) + 1 & "." & Val  (TextBox7.Text.Trim.Split(".")(1) - 60) & " " & Format(Now, "MM/dd/yyyy")
  Else
TextBox7.Text = Format(Val(TextBox6.Text) + Val(Strings.Left(time.Text.Trim, 5)), "##.00") & Strings.Right(time.Text.Trim, 11)
  End If

'This is for hours convert which if the minutes reach 60
'Problem here
Dim xDate As Date = Format(CDate(Strings.Right(time.Text.Trim, 11)), "MM/dd/yyyy")

 If Val(TextBox7.Text.Trim.Split(".")(0)) >= 24 Then
TextBox7.Text = Val(TextBox7.Text.Trim.Split(".")(0)) - 24 & "." & Val(TextBox7.Text.Trim.Split(".")(1)) & " " & DateAdd(DateInterval.Day, 1, xDate)
End If

1 个答案:

答案 0 :(得分:0)

您可以使用.NET格式:

Console.WriteLine( date.ToString("h:mm dd/MM/yyyy"));

有关可用格式的详细信息,请参阅MSDN