如何将 01 January 2002 转换为 VB.NET 日期格式

How do I convert 01 January 2002 into a VB.NET Date Format

如何将 2002 年 1 月 1 日转换为 VB.NET 日期格式

我在 VB.net

中算出了从那天到今天的天数

谢谢

Date.Parse 用于将字符串解析为日期。

然后从DateTime.Now中取出这个来求天数:

MessageBox.Show((DateTime.Now - Date.Parse("01 January 2002")).TotalDays.ToString())

这里不需要DateTime.ParseExact因为那个日期不能有歧义

如果您接受任意文本,比如来自最终用户的文本,您应该改用 TryParse。如果解析失败,Parse 方法将抛出异常。 TryParse 没有。相反,如果解析成功,它将设置一个变量和 return True。如果无法解析字符串,则变量保持不变并且 False 是 returned.

Dim TempDate As Date
If Date.TryParse("some string", TempDate) Then
    'Work with the TempDate, it was set correctly.
    MessageBox.Show(TempDate.ToString)
Else
    'The string could not be parsed
    MessageBox.Show("The value could not be parsed as a date.")
End If

如果您想控制尝试解析的方式(例如区域性),您需要使用接受 IFormatProvider 参数的重载。