.NET时区信息

时间:2010-05-14 19:11:47

标签: .net datetime timezone

C#ASP.NET应用程序中带有时区的datetime的标准格式是什么?

更新以澄清:在ASP.NET中,我需要根据.NET DateTime检查Domino数据库的日期时间。客户端询问他应该使用时区提供日期时间的最佳格式。是什么格式最容易被.NET读取?

3 个答案:

答案 0 :(得分:2)

更新 - 关于您的澄清:

  

我需要从针对asp.net datetime的dominos数据库中检查日期时间。客户端询问他应该使用时区提供日期时间的最佳格式.-意味着.Net很容易阅读。

.NET支持解析各种不同的格式,只要它采用相当标准的明确格式,您就可以解析它。但是,请不要依赖默认设置,使用ParseExactTryParseExact

有关构造格式字符串的详细信息,请查看以下资源:

如果您想向他推荐一些内容,那么我建议您关注ISO 8601 standard,其内容如下:2010-05-14T10:04ZDateTime.Parse也可以理解这种格式,而无需提供格式字符串。


回答你原来的问题:

  

C#ASP.NET应用程序中DateTime与标准格式的标准格式是什么?

DateTimes的默认格式基于当前区域设置。如果您想要一致的格式,请使用CultureInfo.InvariantCulture或您选择的特定文化。

DateTime now = DateTime.Now;
string s = now.ToString(CultureInfo.InvariantCulture);

结果:

"05/14/2010 21:17:35"

请注意,默认格式不包含时区。您可以指定自己的格式:

string s = now.ToString("yyyy-MM-dd HH:mm:ss zz");

结果:

"2010-05-14 21:21:59 +02"

答案 1 :(得分:0)

默认表示形式为:

MM/DD/YYYY HH:MM:SS (AM/PM)

但这也取决于当前线程中指定的CultureInfo。有关选项的完整列表,请使用此MSDN资源:

http://msdn.microsoft.com/en-us/library/8kb3ddd4.aspx

答案 2 :(得分:0)

假设您从字符串到DateTime对象,最简单的方法是使用DateTime.Parse("MM/DD/YY HH:mm:ss UTC-OFFSET"),例如“03/01/2009 05:42:00 -5:00”。更多信息在Parse方法文档中。