我有一个字符串变量包含"02/27/2014 23:00:28"
当我使用以下代码将其转换为Datetime类型时,转换失败(测试返回false并parsedDate包含"01/01/0001 00:00:00")
码:
string date = "02/27/2014 23:00:28"
string pattern = "MM/dd/yyyy hh:mm:ss";
DateTime parsedDate;
bool parsedSuccessfully = DateTime.TryParseExact(date, pattern, null, DateTimeStyles.None, out parsedDate);
Run Code Online (Sandbox Code Playgroud)
谢谢!
HH因为您使用24小时格式,所以需要使用大写字母.
MM/dd/yyyy HH:mm:ss
Run Code Online (Sandbox Code Playgroud)
您还需要使用CultureInfo.InvariantCulture而不是null确保/将其用作日期分隔符.否则它将被您的文化实际日期分隔符替换.*
bool test = DateTime.TryParseExact(date, "MM/dd/yyyy HH:mm:ss", CultureInfo.InvariantCulture, DateTimeStyles.None, out parsedDate);
Run Code Online (Sandbox Code Playgroud)