Twitter返回给我的日期时间字符串如下:
清华4月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、zz或zzz的任何变体,都会引发一个zz异常:
字符串不能被识别为有效的DateTime。
查看MSDN文档,很明显,该格式说明符期望时区为zz:zz格式,时区中有一个冒号来分隔小时和分钟。
我还检查了关于堆栈溢出的其他问题,例如:
而且他们都没有真正的帮助。
我是否可以使用一个时区说明符来正确地解析这种格式?
发布于 2013-06-21 12:02:01
这个真傻。
问题是时间说明员。我用了"hh“,这是12小时的时钟时间。24小时的时间我应该用"HH“。
注意细微的差别。
改变这一切,一切都如预期一样。
https://stackoverflow.com/questions/17234226
复制相似问题