我有以下代码:
Dim dtDoM As Nullable(Of DateTime)
If (txtMarriageDate.Text.Trim = "") Then
dtDoM = Nothing
Else
dtDoM = DateTime.ParseExact(txtMarriageDate.Text.Trim + " 00:00:00", "dd/MM/yyyy hh:mm:ss", System.Globalization.CultureInfo.InvariantCulture)
'dtDoM = Convert.ToDateTime(txtMarriageDate.Text)
End If
在注释掉的部分,我得到了FormatException'字符串未被识别为datetime',而新代码我得到了“System.FormatException = {”日历System.Globalization中不支持字符串表示的DateTime。 GregorianCalendar的。 “}”
编辑:回答。不敢相信我忽略了这一点。答案 0 :(得分:1)
您的日期(01/25/1955)格式为MM/dd/yyyy
,您在格式字符串中使用dd/MM/yyyy
。
尝试使用此:"MM/dd/yyyy hh:mm:ss"
答案 1 :(得分:1)
我认为你的格式字符串错误。您希望"MM/dd/yyyy hh:mm:ss"
,根据您的示例判断。
答案 2 :(得分:1)
你的日子和月份都逆转了。这将有效:
dtDoM = DateTime.ParseExact(txtMarriageDate.Text.Trim + " 00:00:00", "MM/dd/yyyy hh:mm:ss", System.Globalization.CultureInfo.InvariantCulture)