对于使用瑞典语(DateTime.ParseExact
)文化的sv-SE
方法,我观察到一些奇怪的行为。
我的计算机文化是en-US
,但业务逻辑需要sv-SE
文化。所以我先把它设置在当前的线程上。
Thread.CurrentThread.CurrentUICulture = new CultureInfo("sv-SE");
然后我执行以下操作来解析DateTime
值。我想在这里解析的日期时间是 2012年5月27日上午11:57 。
DateTime.ParseExact("270512T11:57", "ddMMyyThh:mm", Thread.CurrentThread.CurrentUICulture);
这很好用。
但是当我从晚上开始时,我得到了例外。当我尝试解析2012年5月27日 11:57 PM 的日期时间戳时。
DateTime.ParseExact("270512T23:57", "ddMMyyThh:mm", Thread.CurrentThread.CurrentUICulture);
上面的行为FormatException
提供了消息字符串未被识别为有效的DateTime。。
这里真的有什么不对?
答案 0 :(得分:6)
仅限12小时制。如果您将格式字符串更改为" ddMMyyTHH:mm"它应该工作。