生成XML的日期时间格式

Nil*_*Pun 21 xml c#-3.0

我正在尝试为cXML生成时间戳,如下所示.C#中是否有任何函数可用于格式化日期时间:2011-06-09T16:37:17 + 16:37

例如

<cXML payloadID="accountsuser@bla.com"
timestamp="2011-06-09T16:37:17+16:37">
Run Code Online (Sandbox Code Playgroud)

Ode*_*ded 40

使用"o"格式说明符 - 在MSDN上的标准日期和时间格式字符串文档中阅读此内容.

此说明符的模式反映了已定义的标准(ISO 8601).

和:

6/15/2009 1:45:30 PM - > 2009-06-15T13:45:30.0900000

string formatted = DateTime.Now.ToString("o");
Run Code Online (Sandbox Code Playgroud)

如果这不是您想要的,您将需要使用自定义格式字符串 - 我相信您需要这样做,因为偏移量不是标准的.

string formatted = DateTime.Now.ToString("yyyy-MM-ddTHH:mm:ssK");
Run Code Online (Sandbox Code Playgroud)


Hau*_*man 7

是的,使用DateTime.ToString("s"),请参阅此链接:标准日期和时间格式字符串.请注意,"s"不包括时区信息,而是"o"包括小数秒和时区.

您也可以使用该XmlConvert.ToString方法,您也可以在其中指定时区信息.