字符串到日期在 c# 中的转换为 yyyy/mm/dd

本文关键字:yyyy mm dd 转换 日期 字符串 | 更新日期: 2023-09-27 18:31:04

我想将字符串内容转换为日期格式,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。如果未定义时区,它将返回预期结果。

字符串到日期在 c# 中的转换为 yyyy/mm/dd

HH说明符表示 24 小时制00 23

您需要改用h说明符,它表示 12 小时制中要12 1

此外,您无需初始化out参数值。定义就足够了;

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_);

DateTime 数据类型格式始终为 MM/dd/yyyy hh:mm:ss tt (即日期 = {11/20/2014 12:00:00 AM}),如果要显示值,可以使用 ToString 扩展方法更改格式