如何在.net中解析RFC822日期?
本文关键字:RFC822 日期 net | 更新日期: 2023-09-27 18:19:16
我有以下Twitter API返回给我的日期时间字符串:
"Thu Apr 26 11:38:36 +0000 2012"
我需要将其转换为DateTime
对象,因此我使用自定义格式说明符调用ParseExact
:
CultureInfo provider = CultureInfo.InvariantCulture;
DateTime publishDate = DateTime.ParseExact(tweet["created_at"].ToString(), "ddd MMM dd hh:mm:ss zzz yyyy", provider);
然而,这会引发一个FormatException
异常,适用于任何z
、zz
或zzz
的时区:
字符串未被识别为有效的日期时间。
查看MSDN文档,很明显,该格式说明符期望时区为zz:zz
格式,其中时区中有一个冒号来分隔小时和分钟。
我检查了其他关于Stack Overflow的问题,如:
- 我如何解析和转换DateTime的RFC 822日期时间格式? 解析RFC822-Datetime
没有一个真的有用。
是否有一个时区说明符,我可以使用它来正确解析此格式?
这个真傻。
问题是小时说明符。我用"hh"表示12小时的时钟时间。对于24小时,我应该使用"HH"。
注意细微的差别。