c#日期时间格式和存储时区信息
本文关键字:存储 时区 信息 格式 日期 时间 | 更新日期: 2023-09-27 18:11:00
我得到的字符串的形式是:
" 2011 - 10 - 12 - t11:55:34.803est"
" 2011 - 10 - 05 - t16:58:05.043gmt"
我想将这些值存储为DateTime对象,但简单的DateTime. parse()不起作用。我是否可以将这些字符串转换为DateTime对象?据我所知,DateTime不知道时区
你可以用z代替GMT,它会工作:
string date = "2011-10-05T16:58:05.043GMT".Replace("GMT", "z");
Console.WriteLine(DateTime.Parse(date));
格林尼治标准时间
+1到IAbstractDownvoteFactor - Z是最佳区域
您的日期时间看起来几乎像Iso8601,但使用自定义时区(http://en.wikipedia.org/wiki/ISO_8601#Time_zone_designators为初始信息)。
使用时区是非常困难的,因为它们的规则可能会改变,有些可能会出现或消失。如果您可以影响传入格式-要求在时区中输入UTC (Z)或绝对偏移量(+08:00)。
否则你需要弄清楚你需要支持哪个时区,弄清楚规则是否改变过,夏令时是否设置正确(即适当时使用PDT/PST)。获得乐趣。