6

我正在尝试将以下内容解析为c# 中String的对象:DateTime

DateTime.ParseExact("20101108 230125", "yyyyMMdd hhmmss", null)

尽管该值看起来正确,但该ParseExact方法一直给我以下信息:

字符串未被识别为有效的日期时间。

谁能告诉我为什么以及如何解析上述字符串而无需手动执行?不ParseExact应该是为了这种场合吗?

4

2 回答 2

20

你弄错了几个小时的格式,应该是大写的:

DateTime.ParseExact("20101108 230125","yyyyMMdd HHmmss", null)

小写hh指定时间使用 12 小时制(使用 AM/PM)。大写HH是 24 小时制时间。

有关详细信息,请查看自定义 DateTime 格式字符串的文档

于 2010-11-16T08:50:55.793 回答
2

尝试使用:

var dt = DateTime.ParseExact("20101108 230125", "yyyyMMdd HHmmss", null)

“hh”表示 12 小时时间,“HH”表示 24 小时时间。

于 2010-11-16T08:56:22.757 回答