You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

VB.NET中DateTime.Parse可用但DateTime.ParseExact失效问题

解决DateTime.ParseExact解析失败的问题

问题核心原因

你用错了小时格式符:

  • 输入字符串里的14:45是24小时制时间,但给ParseExact的格式字符串用了hh:mm——hh是12小时制格式符(范围1-12),14超出了这个范围,而ParseExact是严格匹配格式的,因此直接报错。
  • DateTime.Parse是宽松解析逻辑,它会自动识别输入里的14属于24小时制小时数,所以能正常完成转换。

修正方案

把格式字符串里的hh:mm替换为HH:mm(HH是24小时制格式符,范围00-23),修正后的代码如下:

DateTime.ParseExact("10/05/2023 14:45","dd/MM/yyyy HH:mm",Globalization.CultureInfo.InvariantCulture).ToString("dd/MM/yyyy hh:mm")

执行后会正常解析日期,最后转成hh:mm输出时,会自动转换为12小时制时间(比如输出02:45)。

内容的提问来源于stack exchange,提问作者Conor

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 15:29:55