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

为何DateTime.Parse可解析"08/08/2000"却无法解析"08/24/2000"?

问题原因与解决办法

核心原因

你遇到的问题是**DateTime.Parse默认依赖当前线程的区域文化设置**,如果你的系统文化采用日/月/年格式(比如中文、英式英语),08/08/2000会被解析为“2000年8月8日”,但08/24/2000里的24超过了月份的最大有效值12,因此触发解析错误。

解决办法

有两种可靠的处理方式:

  • 明确指定解析时使用的文化(如果要按月/日/年解析,可选用美式英语文化):
    DateTime.Parse("08/24/2000 00:00:00", System.Globalization.CultureInfo.GetCultureInfo("en-US"));
    
  • 使用DateTime.ParseExact指定精确日期格式,彻底规避文化差异的影响:
    DateTime.ParseExact("08/24/2000 00:00:00", "MM/dd/yyyy HH:mm:ss", System.Globalization.CultureInfo.InvariantCulture);
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.20 15:09:24