请查看以下网页:http://msdn.microsoft.com/en-us/library/3eaydw6e.aspx:
" 您必须在数字符号(##)中包含日期文字。您必须以M / d / yyyy格式指定日期值,例如#5/31/1993#。此要求与您的区域设置和计算机的日期和时间格式设置无关。 "
现在看下面的代码:
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles Me.Load
Dim str As String = "1-2-1999"
Dim dte As Date = CDate(str)
MsgBox(dte.Month)
End Sub
问题:
1)消息框打印:2。我希望它根据以下引用打印1:"您必须以M / d / yyyy"格式指定日期值。
2)字符串文字是:1-2-1999而不是#1-2-1999#,但引用说:"你必须在数字符号(##)" 中包含日期文字p>
答案 0 :(得分:2)
来自MSDN:You must enclose a Date literal within number signs (# #). You must specify the date value in the format M/d/yyyy, for example #5/31/1993#.
这不是你做的。您创建了一个字符串,然后将其转换为日期。要使用文字创建Date
变量:
Dim dte As Date = #1/2/1999#
Console.WriteLine(dte.Month) ' prints 1