我正在使用C#,如果我这样做
DateTime.ParseExact("4/4/2010 4:20:00 PM", "M'/'d'/'yyyy H':'mm':'ss' 'tt", null)
返回值始终是4:20 AM-使用tt我在做什么错?
谢谢!
最佳答案
将小时格式(H
)转换为小写:
DateTime.ParseExact(
"4/4/2010 4:20:00 PM",
"M/d/yyyy h:mm:ss tt",
CultureInfo.InvariantCulture);
大写字母“H”表示24小时制,小写字母“h”表示12小时制,将遵循候选字符串中的AM/PM。
旁注:最好向此类方法提供
IFormatProvider
实例(即使只是CultureInfo.InvariantCulture
)。在您遇到问题之前,这并不是一件真正重要的事情,因此养成指定文化信息的习惯可能很好。关于c# - 为什么DateTime.ParseExact()无法使用 “4/4/2010 4:20:00 PM” “M'解析/'d'中的AM/PM/'yyyy H' :'mm' :'ss' 'tt”,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2596969/