bha*_*esh -2 c# string datetime
我试图解析以下内容 09/04/2015 17:22:29.183 PM
代码如下:
string s = "09/04/2015 17:22:29.183 PM";
DateTime.ParseExact(s,Constants.DateTimeFormat,System.Globalization.CultureInfo.InvariantCulture);
Run Code Online (Sandbox Code Playgroud)
该DateTimeFormatIS形式的dd/MM/yyyy hh:mm:ss.fff tt
但是编译器会抛出错误.我哪里错了?
hh符是12小时制时钟格式,这需要01到12,你需要使用HH符这是24小时制时钟格式,这需要00到23.
string s = "09/04/2015 17:22:29.183 PM";
DateTime dt;
if(DateTime.TryParseExact(s, "dd/MM/yyyy HH:mm:ss.fff tt", CultureInfo.InvariantCulture,
DateTimeStyles.None, out dt))
{
dt.Dump(); // 09.04.2015 17:22:29
}
Run Code Online (Sandbox Code Playgroud)
但另一方面,AM或PM指示符用于12小时时钟格式.这就是为什么没有17 PM或17 AM这样的事情.