艾哈迈德说的话。此外,您可以在您的特定示例中使用TryParseExact函数。。。
在整数格式为YYYYMMDD
的情况下,为什么CDate(integer)
不起作用?
为什么这个愚蠢的网站不让我提交这样一个简短的问题,而我除了在结尾添加一些华夫饼之外没有其他东西可以添加
1>2等等
不支持整数,根据MSDN:
使用
IsDate
函数确定值是否可以转换为日期和时间。CDate识别日期文字和时间文字,但是而不是数值。
这将返回false
:
Dim isValid = IsDate("20120314") ' false
但是,您可以使用有效的日期表示形式作为字符串。示例:
Dim result = CDate(DateTime.Now.ToString("yyyy-MM-dd"))
Dim Value As Integer = 20120314
Dim MyDate As DateTime
If DateTime.TryParseExact(Value.ToString(), "yyyyMMdd", CultureInfo.CurrentCulture, DateTimeStyles.None, MyDate) Then
'Do what you want with MyDate. For example...
Console.WriteLine(MyDate.ToShortDateString())
End If
所有TryParse
和TryParseExact
函数的美妙之处在于,它们只是返回一个布尔值,指示解析通过或失败。他们不会抛出异常。