我目前正在尝试解析从每隔几分钟从网络下载的 xml 中获取的字符串。该字符串如下所示:
Thu Jul 12 08:39:56 GMT+0100 2012
起初我只是做了一个string.split
并在时间结束后取出所有东西(GMT+0100 2012
) 并在日期后插入 2012 年。
这非常有效,直到日期更改为:
Thu Jul 12 08:39:56 GMT+0000 2012
所以我想动态地传递 GMT,无论他们在 C# 中向我发送该字符串。
任何意见,将不胜感激。
您可以使用DateTime.ParseExact
with a 自定义日期和时间格式字符串 http://msdn.microsoft.com/en-us/library/8kb3ddd4.aspx:
DateTime.ParseExact("Thu Jul 12 08:39:56 GMT+0000 2012",
"ddd MMM dd hh:mm:ss 'GMT'K yyyy",
CultureInfo.InvariantCulture)
如果字符串和格式字符串不完全匹配,这将引发格式异常,因此您可能需要使用DateTime.TryParseExact
这将返回一个false
如果失败了。
代替DateTime
你可能想使用DateTimeOffset
保留时区信息,如@Keith https://stackoverflow.com/users/436376/keiths 评论了 https://stackoverflow.com/questions/11618459/troubles-parsing-datetime-from-string/11618668#comment15384921_11618668 - this may对你的申请很重要。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)