1

我有以下行。 DateTime.ParseExact("08-11-2013 07:38:05", "yyyy-MM-dd HH:mm:ss", Nothing)

它抛出一个错误。

参数不正确。

堆栈跟踪

在 System.DateTimeParse.ParseExact(String s, String format, DateTimeFormatInfo dtfi, DateTimeStyles style) at System.DateTime.ParseExact(String s, String format, IFormatProvider provider)

提前致谢。

4

1 回答 1

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

有关更多信息,请参阅:自定义日期和时间格式字符串

于 2013-11-08T15:20:55.190 回答