我有以下一行。
DateTime.ParseExact("08-11-2013 07:38:05", "yyyy-MM-dd HH:mm:ss", Nothing)
它会抛出错误。
参数不正确。
的栈跟踪 的
at System.DateTimeParse.ParseExact(String s,String format, DateTimeFormatInfo dtfi,DateTimeStyles style)at System.DateTime.ParseExact(String s,String format,IFormatProvider 提供商)
提前致谢。
答案 0 :(得分:4)
您的格式与您提供的日期不符,应该是:
"dd-MM-yyyy HH:mm:ss"
考虑到你的意思是2013年11月8日
你的代码应该是:
DateTime dt = DateTime.ParseExact("08-11-2013 07:38:05",
"dd-MM-yyyy HH:mm:ss",
CultureInfo.InvariantCulture); // Instead of Nothing
您还可以使用"d-M-yyyy HH:mm:ss"
格式,因为它会考虑日期和月份的单位数/双位数。
它似乎是来自VB.Net的背景,其中Nothing
是默认值,在C#中你可以使用null
来表示你的情况或更好使用CultureInfo.InvariantCulture
有关详情,请参阅:Custom Date and Time Format Strings