CDATE如何在VB.NET上执行从字符串到日期的转换

时间:2015-05-25 07:01:32

标签: vb.net date

我只想问一下VB.NET的执行方式是从字符串转换日期。我目前正在设计数据库视图并将日期转换为MMddyyyy格式,但我担心CDATE会将其读作ddMMyyyy

我希望它缩短并使用CDATE转换日期,而不是使用传统的M/d/yyyy h:mm:ss tt


例如:

Dim myDate As Date = CDate(DataTable.Rows(0).Item("DateValue").ToString())

1 个答案:

答案 0 :(得分:7)

CDate取决于控制面板的区域设置,不建议您使用Date.ParseExact代替

Const MyDateFormat As String = "MMddyyyy"

Dim dte As Date = #2/1/2003#
'convert the date to a string
Dim strDate As String = dte.ToString(MyDateFormat)
'convert the string back to a date
Dim dte2 As Date = Date.ParseExact(strDate, MyDateFormat, System.Globalization.CultureInfo.InvariantCulture)

If dte = dte2 Then
  MsgBox("They're the same :-) " & strDate)
Else
  MsgBox("They're different :-(")
End If

对于您的代码,它看起来像:

Dim myDate As Date = Date.ParseExact(DataTable.Rows(0).Item("DateValue").ToString(), "MMddyyyy", System.Globalization.CultureInfo.InvariantCulture)