TryParseExact对带有日期和时间的字符串不起作用,而格式仅包含日期格式

Don*_*Bar 2 c# datetime

知道为什么当我在我的字符串中有时间"00:00:00"时这不起作用吗?

DateTime.TryParseExact("01/06/2015 00:00:00", "dd/MM/yyyy", CultureInfo.InvariantCulture, DateTimeStyles.None, out tempDate)   
Run Code Online (Sandbox Code Playgroud)

当我这样做时,它可以正常工作:

DateTime.TryParseExact("01/06/2015", "dd/MM/yyyy", CultureInfo.InvariantCulture, DateTimeStyles.None, out tempDate)  
Run Code Online (Sandbox Code Playgroud)

任何帮助都感激不尽!谢谢

Son*_*nül 5

文件 ;

使用指定的格式,特定于文化的格式信息和样式将指定的日期和时间字符串表示形式转换为其DateTime等效形式.字符串表示的格式必须与指定的格式完全匹配.

对于你的第二个例子,他们匹配,但在第一个例子中,他们没有.

请改用dd/MM/yyyy HH:mm:ss格式.

string s = "01/06/2015 00:00:00";
DateTime dt;
if(DateTime.TryParseExact(s, "dd/MM/yyyy HH:mm:ss", CultureInfo.InvariantCulture,
                          DateTimeStyles.None, out dt))
{
    // Successfully parsing
}
Run Code Online (Sandbox Code Playgroud)

更多信息;