我想将字符串内容转换为日期格式为yyyy/MM/dd HH:mm:ss tt
string date = "2014-11-20 3:21:00 PM";
DateTime date_=System.DateTime.Now;
var result = DateTime.TryParseExact(date, "yyyy-MM-dd HH:mm:ss tt",
System.Globalization.CultureInfo.InvariantCulture,
System.Globalization.DateTimeStyles.None,
out date_);
但它返回的结果与要求不匹配TryParse
函数返回false。如果未定义时区,则会返回预期结果。
答案 0 :(得分:5)
HH
specifier适用于 24小时制,00
至23
。
您需要在 12小时制中使用h
specifier代替1
至12
。
此外,您无需初始化out
parameter值。定义就足够了;
string date = "2014-11-20 3:21:00 PM";
DateTime date_;
var result = DateTime.TryParseExact(date, "yyyy-MM-dd h:mm:ss tt",
CultureInfo.InvariantCulture,
DateTimeStyles.None, out date_);
答案 1 :(得分:-1)
DateTime数据类型格式始终为MM / dd / yyyy hh:mm:ss tt(即Date = {11/20/2014 12:00:00 AM}), 如果要显示该值,可以使用ToString扩展方法
更改格式