DateTime.ParseExact 根本不起作用,为什么?

发布于 2024-10-02 15:54:21 字数 346 浏览 3 评论 0原文

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

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

虽然该值看起来正确,但 ParseExact 方法只是不断给出以下内容:

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

谁能告诉我为什么以及如何解析上面的字符串而无需手动方式? ParseExact 不应该适合这种场合吗?

I am attempting to parse the following String into a DateTime object in c#:

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

although the value looks correct the ParseExact method just keeps giving me the following:

String was not recognized as a valid DateTime.

Can anybody tell me why and how I can parse the above string without having to do it the manual way? Isn't ParseExact supposed to be for this kind of occasion?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

甜是你 2024-10-09 15:54:21

您的小时格式错误,应该是大写:

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

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

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

You got the format for hours wrong, should be uppercase:

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

Lowercase hh specifies that the time uses a 12-hour clock (with AM/PM). Uppercase HH is a 24 hour clock time.

For detailed info, check the documentation of custom DateTime format strings.

窗影残 2024-10-09 15:54:21

尝试使用:

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

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

Try using:

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

The "hh" is for 12 hour time and "HH" for 24 hour.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文