我知道为什么当我在我的字符串中有时间" 00:00:00" 时,这确实有效?
DateTime.TryParseExact("01/06/2015 00:00:00", "dd/MM/yyyy", CultureInfo.InvariantCulture, DateTimeStyles.None, out tempDate)
当我这样做时,它可以正常工作:
DateTime.TryParseExact("01/06/2015", "dd/MM/yyyy", CultureInfo.InvariantCulture, DateTimeStyles.None, out tempDate)
任何帮助将不胜感激! 感谢
答案 0 :(得分: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
}
更多信息;
答案 1 :(得分:0)
不幸的是,我尝试了答案,但没有成功。
事实证明,我尝试ParseExact的日期字符串的开头有一个空格字符。 (例如“ 20/08/2019”)
因此,请仔细检查您的日期字符串,确保没有发现没有隐藏的字符或空格字符