检查特定于日期时间格式的字符串输入

时间:2014-07-21 17:51:54

标签: vb.net datetime

我有用户输入需要验证字符串是否采用日期时间格式,如下所示: yyyy-MM-dd HH:mm:ss

用户无法选择任何其他格式,但错误检查如何检测字符串是否为此格式。

 sDate = DateTime.ParseExact(startDate, "yyyy-MM-dd HH:mm:ss", CultureInfo.CurrentCulture)

startdate是字符串。

3 个答案:

答案 0 :(得分:0)

此代码可帮助您将日期转换为您要检查的格式

 Dim format As String = "yyy-MM-dd HH:mm:ss" 'let input be "02-02-2014 12:12:12"
 MsgBox(dt.ToString(format)) ' the output will be 2014-02-02 12:12:12

它在VS 2010(Windows 7)中正常工作

答案 1 :(得分:0)

恕我直言,你应该考虑使用DateTimePicker控件来输入日期/时间。使用Custom Format(如果需要)。它将为您节省第一次使用并验证它。

答案 2 :(得分:0)

如果您希望日期/时间格式完全采用特定格式,则应使用DateTime.TryParseExact

Function IsValidDate(ByVal dateValue As String) As Boolean
    Return DateTime.TryParseExact(dateValue, "yyyy-MM-dd HH:mm:ss", CultureInfo.InvariantCulture, DateTimeStyles.None, Nothing)
End Function