在c#中将字符串解析为12小时格式的日期时间

本文关键字:格式 12小时 日期 时间 字符串 | 更新日期: 2023-09-27 17:49:37

如何将日期从一种形式转换为另一种形式?我有一个字符串变量bid="3/11/2014 10:57:00 PM"。其中3=月,11=日,2014=年,10=小时(12小时格式),57=分钟,00=秒PM=AM/PM格式。

我需要将变量bid转换为此日期格式并将其存储在日期变量中。投标必须以这种格式转换:"11/3/2014 10:57:00 PM"其中11=天,3=月,2014=年10=小时12小时格式,57=分钟,00=秒,PM=AM/PM格式。

我尝试了Datetime.parse确切,有几个字符串的组合,但没有工作。有人能帮帮我吗?

在c#中将字符串解析为12小时格式的日期时间

我需要将变量bid转换为此日期格式并将其存储在日期变量

这个对我有效:

var dt = DateTime.ParseExact("3/11/2014 10:57:00 PM", 
                             "M/d/yyyy h:mm:ss tt",
                             CultureInfo.InvariantCulture)

投标必须以这种格式转换:"11/3/2014 10:57:00 PM"其中11=天,3=月,2014=年10=小时在12小时格式,57=分钟,00=秒,PM=AM/PM格式。

嗯,你可以把它转换回字符串:

var s = dt.ToString("d/M/yyyy h:mm:ss tt");

但是为什么要用那种格式呢?如果你要把它发送给数据库,那么就把它作为一个日期——这样数据库就不必担心日期是一个特定的格式。如果你要在应用中显示它,那么要么使用用户文化,要么在UI层中定义格式。