Joe*_*Dan 1 c# datetime parsing
我正在谈论以这种格式给我回复日期的网络服务
Fri, 02 Oct 2009 05:33:11 - 0500
我一直在尝试将其解析为DateTimeC#并获得无效的字符串错误.
字符串未被识别为有效的DateTime
这是代码:
string text = "Fri, 02 Oct 2009 05:33:11 - 0500";
DateTime date = DateTime.ParseExact(text,"ddd, dd MMM yyyy h:mm:ss - zzzzz", null);
Run Code Online (Sandbox Code Playgroud)
如果我从参数中删除 - 0500和 ,它可以正常工作.不知道我在时区上做错了什么.任何方向将不胜感激.我已经尝试了不同的"z"计数并删除了" - "也假设它让人感到困惑.- zzzzParseExact
你干脆,不可以.
您的输入不是可以解析的有效字符串,DateTime 除非您在其中执行某些字符串操作.你的偏移部分必须有半冒号(:)来解析它.
此外,您需要使用hh说明符(或更好HH),因为您的小时部分具有前导零.
我只能想到一种方法,获取空白的最后一个索引,删除它,:在你的小时和分钟偏移之间插入,并解析它,DateTimeOffset因为你的字符串有UTC偏移部分.
string text = "Fri, 02 Oct 2009 05:33:11 -05:00";
var dto = DateTimeOffset.ParseExact(text, "ddd, dd MMM yyyy HH:mm:ss zzz",
CultureInfo.InvariantCulture, DateTimeStyles.None);
Run Code Online (Sandbox Code Playgroud)
现在你有一个DateTimeOffset为2.10.2009 05:33:11 -05:00你可以使用它DateTime,LocalDateTime或UtcDateTime性质.
| 归档时间: |
|
| 查看次数: |
390 次 |
| 最近记录: |