你会如何格式化国际格式的DateTime?

国际字符串表示格式为(YYYY-MM-DD HH:MM:SS±HHMM)。

例如2010-06-10 21:21:10 -0400

基本上我遇到的问题是弄清楚如何从GMT中获得差异。

DateTime dt = new DateTime(2008, 3, 9, 16, 5, 7, 123); String.Format("{0:yyyy-MM-dd HH:mm:ss ????}", dt); 

 DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss zzz"); 

将输出:

 2010-06-29 08:25:16 -07:00 

我会选择ISO format

W3C还有一个关于这个主题的说明: Date and Time Formats

这些是国际标准。

string isoFormat = inputDateTime.Format(“s”);

您想使用DateTimeOffset 。

我想这会在几个小时内显示出来。 这是-4与GMT的区别。

哦,我明白了,抱歉误解了这个问题。

你会如何格式化国际格式的DateTime?

您可以使用自定义格式说明符 (ISO标准日期/时间格式没有标准格式)。

我遇到的问题是弄清楚如何与GMT区别开来。

使用DateTimeOffset的静态方法之一解析,然后检查Offset属性。

或者,如果您的意思是,如何在字符串中包含偏移量:使用具有正确时区的DateTimeOffset和自定义格式说明符。