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

如何将“2013:11:21 15:11:04+02:00”格式字符串解析为DateTime类型

错误原因

抛出System.FormatException的核心问题是格式字符串的小时标识符使用错误:

  • 你代码中使用的hh代表12小时制的小时,合法取值范围为01~12,待解析字符串中的小时值是15,属于24小时制的取值范围,不符合hh的格式校验规则
  • 额外注意:使用null作为格式提供器参数时,会默认读取当前系统的区域配置,部分特殊区域可能存在自定义的时间符号规则,会导致匹配失败,推荐指定固定的固定文化信息规避区域差异问题
正确实现代码

首先需要引入命名空间:
using System.Globalization;

解析为DateTime类型的正确写法:

DateTime.ParseExact("2013:11:21 15:11:04+02:00", "yyyy:MM:dd HH:mm:sszzz", CultureInfo.InvariantCulture);

如果你需要保留原始的时区偏移信息,更推荐使用DateTimeOffset类型解析:

DateTimeOffset.ParseExact("2013:11:21 15:11:04+02:00", "yyyy:MM:dd HH:mm:sszzz", CultureInfo.InvariantCulture);

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 02:06:09