DateTime.ParseExact()是否不获取24小时制的时间值? [英] DateTime.ParseExact() does not grok 24-hour time values?

查看:101
本文介绍了DateTime.ParseExact()是否不获取24小时制的时间值?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

这行代码:

DateTime dt = DateTime.ParseExact(time, "hh:mm", CultureInfo.InvariantCulture);

将时间值解析为 12:45就可以了,但是会抛出 13:00

parses a "time" value of "12:45" just fine, but throws an exception of "13:00"

我应该使用其他CultureInfo值,还是需要在小时值大于12的值后附加 pm,或者... ...

Should I be using some other CultureInfo value, or do I need to append a "pm" to hour values above 12, or ... ?

错误消息是:未处理 System.FormatException
Message =字符串未被识别为有效的DateTime。

推荐答案

hh是12小时制(01到12)。您需要使用 HH作为24小时时钟。

"hh" is the 12-hour clock format (01 to 12). You need to use "HH" for a 24 hour clock.

DateTime dt = DateTime.ParseExact(time, "HH:mm", CultureInfo.InvariantCulture);

这篇关于DateTime.ParseExact()是否不获取24小时制的时间值?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆