检查并从字符串转换为日期vb.net

145*_*446 3 .net vb.net date-format

我是VB.NET的初学者,我陷入了一个非常简单的事情,日期格式.

我正在开发一个应用程序,它将excel表中的数据上传到sql server数据库.只有在mm/dd/yyyy格式下,应用程序才会接受日期.它应该拒绝所有日期.

现在我正在努力检查它的格式.这是我的代码.

Dim ROHSDate As String
ROHSDate = Trim(filterString(holdingTank))
... 
here i need to check if it is in mm/dd/yyyy format
Run Code Online (Sandbox Code Playgroud)

请帮忙.

Jon*_*eet 7

使用DateTime.TryParseExact,它允许您指定格式 - 它将尝试解析它,在成功时将解析的值放入输出参数,并返回成功/失败:

Dim dt As DateTime
If (DateTime.TryParseExact(ROHSDate, "mm/dd/yyyy", \
                           CultureInfo.InvariantCulture, \
                           DateTimeStyles.None, \
                           Out dt))
    UseDateTime(dt)
End If
Run Code Online (Sandbox Code Playgroud)

显然,Else如果需要,可以添加子句等.

(我相信在现代VB中,线路延续可能是不必要的,但是嘿......希望你能明白这一点.)

请注意,我已明确使用,CultureInfo.InvariantCulture以便如果代码在使用不同日期分隔符或不同日历的计算机上运行,​​则不会有任何区别.