[c#] How to get DateTime.Now() in YYYY-MM-DDThh:mm:ssTZD format using C#

Possible Duplicate:
datetime to string with time zone

This is one of the W3C standard date time format that I want to use in sitemap. This DateTime standard is:

Complete date plus hours, minutes and seconds: YYYY-MM-DDThh:mm:ssTZD where TZD = time zone designator (Z or +hh:mm or -hh:mm) (eg 1997-07-16T19:20:30+01:00)

I am using the following code to get the current DateTime in that format:

DateTime.Now.ToString("yyyy-MM-ddThh:mm:ssTZD");

But this gives: 2011-08-10T02:27:20TZD

Apparently the DateTime.Now doesn't recognize "TZD" in the parameter. Please help. How can I get the current DateTime in this format?

This question is related to c# datetime

The answer is


use zzz instead of TZD

Example:

DateTime.Now.ToString("yyyy-MM-ddThh:mm:sszzz");

Response:

2011-08-09T11:50:00:02+02:00

Try this:

DateTime.Now.ToString("yyyy-MM-ddThh:mm:sszzz");

zzz is the timezone offset.