我得到的字符串形式:C#日期时间格式和存储时区信息
“2011-10-12T11:55:34.803EST”
“2011-10-05T16:58:05.043GMT”
我想将这些值存储为DateTime对象,但是一个简单的DateTime.Parse()不起作用。无论如何,我可以将这些字符串转换为DateTime对象吗?据我所知,DateTime不知道时区。
我得到的字符串形式:C#日期时间格式和存储时区信息
“2011-10-12T11:55:34.803EST”
“2011-10-05T16:58:05.043GMT”
我想将这些值存储为DateTime对象,但是一个简单的DateTime.Parse()不起作用。无论如何,我可以将这些字符串转换为DateTime对象吗?据我所知,DateTime不知道时区。
+1到IAbstractDownvoteFactor - Z是最好的区。
您的日期时间看起来几乎像Iso8601,但具有自定义时区(初始信息http://en.wikipedia.org/wiki/ISO_8601#Time_zone_designators)。
使用时区非常困难,因为它们的规则可能会改变,有些可能会出现并消失。如果您可以影响传入格式 - 请求时区中的UTC(Z)或绝对偏移量(+08:00)。
否则,您需要找出您需要支持的时区,确定规则是否更改以及是否正确设置了夏令时区域(即适当使用PDT/PST时)。玩的开心。
此帖可能有帮助:http://stackoverflow.com/questions/179940/c-convert-utc-gmt-time-to-local-time –
检查这个帖子http://stackoverflow.com/questions/ 241789/parse-datetime -with-timezone-of-form-pst-cest-utc-etc –
你为什么试图根据不同的时区存储时间。如果您要处理数据,则应在单个时区中存储时间和日期。如果你只是简单地显示它,那么就把它存储起来就像你一样,然后用相同的方式显示它。 –