<?xml version="1.0" encoding="UTF-8"?><item><title>Parsing Dates and Times in .NET</title><description>&lt;H1&gt;&lt;FONT face=Arial size=3&gt;Parsing Dates and Times in .NET&lt;/FONT&gt;&lt;/H1&gt;&#13;
&lt;P&gt;Parsing dates and times using DateTime.Parse and DateTime.ParseExact is simple enough once you know how they work. &lt;/P&gt;&#13;
&lt;P&gt;It&amp;#8217;s simple if you know the format of the string you&amp;#8217;re getting and it exactly matches one of the built-in formats, or if you&amp;#8217;re willing to let the framework do it&amp;#8217;s best to parse the string and you&amp;#8217;re ok with it failing otherwise, but if you need to parse specific formats, you&amp;#8217;ll need to build your own format specifiers.&lt;/P&gt;&#13;
&lt;P&gt;There are two ways of parsing date strings:&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Parse and ParseExact&lt;/P&gt;&#13;
&lt;P&gt;DateTime.Parse() is the simplest.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;It tries to figure out the format of the date, and usually does a pretty good job.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Here are some examples that work for me, with the result of a DateTime.ToString() on the parsed date:&lt;/P&gt;&#13;
&lt;TABLE cellSpacing=0 cellPadding=0 border=1&gt;&#13;
&lt;TBODY&gt;&#13;
&lt;TR&gt;&#13;
&lt;TD vAlign=top width=295&gt;&#13;
&lt;P&gt;&lt;B&gt;&lt;FONT size=2&gt;String to parse&lt;?xml:namespace prefix = o /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;&#13;
&lt;TD vAlign=top width=295 .5pt? windowtext solid mso-border-left-alt: .5pt; -border-alt: 0in; -BOTTOM:&gt;&#13;
&lt;P&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;FONT size=2&gt;Resulting DateTime.ToString&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&#13;
&lt;TR style="mso-yfti-irow: 1"&gt;&#13;
&lt;TD vAlign=top width=295&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;01-Jan-2005&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&#13;
&lt;TD vAlign=top width=295&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;1/1/2005 12:00:00 AM&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&#13;
&lt;TR style="mso-yfti-irow: 2"&gt;&#13;
&lt;TD vAlign=top width=295&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;01-Jan-2005 12:34 PM&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&#13;
&lt;TD vAlign=top width=295&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;1/1/2005 12:34:00 PM&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&#13;
&lt;TR style="mso-yfti-irow: 3"&gt;&#13;
&lt;TD vAlign=top width=295&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;1/1/05 1:3&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&#13;
&lt;TD vAlign=top width=295&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;1/1/2004 1:03:00 AM&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&#13;
&lt;TR style="mso-yfti-irow: 4"&gt;&#13;
&lt;TD vAlign=top width=295&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;1 march, 2005 1 am&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&#13;
&lt;TD vAlign=top width=295&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;3/1/2005 1:00:00 AM&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&#13;
&lt;TR style="mso-yfti-irow: 5"&gt;&#13;
&lt;TD vAlign=top width=295&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;1995-02-04&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&#13;
&lt;TD vAlign=top width=295&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;2/4/1995 12:00:00 AM&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&#13;
&lt;TR&gt;&#13;
&lt;TD vAlign=top width=295&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;February 3&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&#13;
&lt;TD vAlign=top width=295&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;2/3/2005 12:00:00 AM&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&#13;
&lt;TR&gt;&#13;
&lt;TD vAlign=top width=295&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;10:30&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&#13;
&lt;TD vAlign=top width=295&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;2/15/2005 10:30:00 AM&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&#13;
&lt;TR&gt;&#13;
&lt;TD vAlign=top width=295&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;10 am&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&#13;
&lt;TD vAlign=top width=295&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;2/15/2005 10:00:00 AM&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&#13;
&lt;P&gt;&lt;/P&gt;&#13;
&lt;P&gt;These all did what we expected. DateTime.Parse() is probably the best function to use if the user is typing in a date, and you want it parsed so you can work with it.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/P&gt;&#13;
&lt;P&gt;If you&amp;#8217;re receiving your date strings from data (network, etc), and they&amp;#8217;re in a specific format, check this table to see if there&amp;#8217;s a predefined format string for your format:&lt;/P&gt;&lt;o:p&gt;&#13;
&lt;P&gt;&lt;/P&gt;&#13;
&lt;P&gt;&#13;
&lt;TABLE cellSpacing=0 cellPadding=0 border=1&gt;&#13;
&lt;TBODY&gt;&#13;
&lt;TR style="mso-yfti-irow: 0; mso-yfti-firstrow: yes"&gt;&#13;
&lt;TD vAlign=top width=143&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;Standard&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&#13;
&lt;TD vAlign=top width=61&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;Format&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&#13;
&lt;TD vAlign=top width=288&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;Example Date&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&#13;
&lt;TR style="mso-yfti-irow: 1"&gt;&#13;
&lt;TD vAlign=top width=143&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;RFC1123&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&#13;
&lt;TD vAlign=top width=61 windowtext 0in; mso transparent; BACKGROUND-COLOR: solid; 1pt BORDER-BOTTOM: PADDING-TOP: 45.5pt; WIDTH: #ece9d8; BORDER-LEFT:&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;r&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&#13;
&lt;TD vAlign=top width=288 windowtext 0in; mso transparent; BACKGROUND-COLOR: solid; 1pt BORDER-BOTTOM: PADDING-TOP: WIDTH: #ece9d8; BORDER-LEFT: 216.25pt;&gt;&lt;PRE&gt;&lt;FONT size=2&gt;Sun, 06 Nov 1994 08:49:37 GMT&lt;/FONT&gt;&lt;/PRE&gt;&lt;/TD&gt;&lt;/TR&gt;&#13;
&lt;TR style="mso-yfti-irow: 2"&gt;&#13;
&lt;TD vAlign=top width=143 windowtext 0in; BACKGROUND-COLOR: solid; 1pt BORDER-BOTTOM: PADDING-TOP: WIDTH: BORDER-LEFT: tr 107.55pt;&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;ISO 8601 (almost)&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&#13;
&lt;TD vAlign=top width=61 windowtext 0in; mso transparent; BACKGROUND-COLOR: solid; 1pt BORDER-BOTTOM: PADDING-TOP: 45.5pt; WIDTH: #ece9d8; BORDER-LEFT:&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;s&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&#13;
&lt;TD vAlign=top width=288 windowtext 0in; mso transparent; BACKGROUND-COLOR: solid; 1pt BORDER-BOTTOM: PADDING-TOP: WIDTH: #ece9d8; BORDER-LEFT: 216.25pt;&gt;&#13;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;1993-02-14T13:10:30&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&#13;
&lt;TR style="mso-yfti-irow: 3; mso-yfti-lastrow: yes"&gt;&#13;
&lt;TD vAlign=top width=143 windowtext 0in; BACKGROUND-COLOR: solid; 1pt BORDER-BOTTOM: PADDING-TOP: WIDTH: BORDER-LEFT: tr 107.55pt;&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;Universal Sortable&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&#13;
&lt;TD vAlign=top width=61 windowtext 0in; mso transparent; BACKGROUND-COLOR: solid; 1pt BORDER-BOTTOM: PADDING-TOP: 45.5pt; WIDTH: #ece9d8; BORDER-LEFT:&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;u&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&#13;
&lt;TD vAlign=top width=288 windowtext 0in; mso transparent; BACKGROUND-COLOR: solid; 1pt BORDER-BOTTOM: PADDING-TOP: WIDTH: #ece9d8; BORDER-LEFT: 216.25pt;&gt;&#13;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;2004-04-30 04:30:00Z&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/P&gt;&#13;
&lt;P&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/o:p&gt;If there is, then you can use ParseExact with the single-character format specifier like this:&lt;/P&gt;&#13;
&lt;P&gt;&lt;SPAN style="mso-tab-count: 1"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;// Parse an RFC1123 date&lt;BR&gt;&lt;SPAN style="mso-tab-count: 1"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;DateTime dt = DateTime.ParseExact(dateString, &amp;#8220;r&amp;#8221;);&lt;/P&gt;&#13;
&lt;P&gt;There are other strings you can pass to ParseExact, but they&amp;#8217;re culture-specific, so generally not all that useful.&lt;/P&gt;&#13;
&lt;P&gt;In many cases, you have a date string in a specific format,which doesn&amp;#8217;t just work with DateTime.Parse.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;One example is this one, which is allowed by the the &lt;A href="http://hydracen.com/dx/iso8601.htm"&gt;ISO 8601&lt;/A&gt; standard, but not parsed by ParseExact when you specify the &amp;#8216;s&amp;#8217; specifier:&lt;/P&gt;&#13;
&lt;P&gt;&lt;SPAN style="mso-tab-count: 1"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;19930214T131030&lt;/P&gt;&#13;
&lt;P&gt;To parse this, you need to build a string that specifies the format you&amp;#8217;re expecting, using characters from this table:&lt;/P&gt;&#13;
&lt;TABLE cellSpacing=0 cellPadding=0 border=1&gt;&#13;
&lt;TBODY&gt;&#13;
&lt;TR&gt;&#13;
&lt;TD vAlign=top&gt;&#13;
&lt;P align=center&gt;&lt;B&gt;&lt;FONT size=2&gt;Format specifier&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;&#13;
&lt;TD vAlign=top&gt;&#13;
&lt;P align=center&gt;&lt;B&gt;&lt;FONT size=2&gt;Description&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&#13;
&lt;TR&gt;&#13;
&lt;TD vAlign=top&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;d, dd, ddd, dddd&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&#13;
&lt;TD vAlign=top BACKGROUND-COLOR: BORDER-BOTTOM: PADDING-TOP: WIDTH: #ece9d8; transparent? 0.75pt; 75%; LEFT:&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;Current day of the month&amp;nbsp; d, dd=numeric, ddd=abbreviation (ie, &amp;#8216;Wed&amp;#8217;), dddd=spelled out.&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&#13;
&lt;TR style="mso-yfti-irow: 2"&gt;&#13;
&lt;TD vAlign=top&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;f, ff, fff, ffff, fffff, &amp;#8230;&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&#13;
&lt;TD vAlign=top&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;Fractions of a second, varying numbers of digits&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&#13;
&lt;TR style="mso-yfti-irow: 3"&gt;&#13;
&lt;TD vAlign=top&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;h, hh&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&#13;
&lt;TD vAlign=top&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;Hours, 12 hour format. &lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&#13;
&lt;TR style="mso-yfti-irow: 4"&gt;&#13;
&lt;TD vAlign=top&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;H, HH&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&#13;
&lt;TD vAlign=top&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;Hours, 24 hour format&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&#13;
&lt;TR style="mso-yfti-irow: 5"&gt;&#13;
&lt;TD vAlign=top&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;m, mm&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&#13;
&lt;TD vAlign=top&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;Minutes&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&#13;
&lt;TR&gt;&#13;
&lt;TD vAlign=top&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;M, MM, MMM, MMMM&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&#13;
&lt;TD vAlign=top&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;Month.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;MM = 2 digit, MMM = abbreviation (ie, &amp;#8216;Jan&amp;#8217;), MMMM=Spelled out.&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&#13;
&lt;TR style="mso-yfti-irow: 7"&gt;&#13;
&lt;TD vAlign=top&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;s, ss&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&#13;
&lt;TD vAlign=top&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;Seconds&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&#13;
&lt;TR style="mso-yfti-irow: 8"&gt;&#13;
&lt;TD vAlign=top&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;t, tt&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&#13;
&lt;TD vAlign=top&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;AM/PM indicator. &lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&#13;
&lt;TR style="mso-yfti-irow: 9"&gt;&#13;
&lt;TD vAlign=top&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;y, yy, yyyy&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&#13;
&lt;TD vAlign=top&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;Year&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&#13;
&lt;TR style="mso-yfti-irow: 10"&gt;&#13;
&lt;TD vAlign=top&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;z, zz, zzz&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&#13;
&lt;TD vAlign=top&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;Time zone offset from GMT. &lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&#13;
&lt;TR style="mso-yfti-irow: 11"&gt;&#13;
&lt;TD vAlign=top&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;:&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&#13;
&lt;TD vAlign=top&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;Time separator.&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&#13;
&lt;TR style="mso-yfti-irow: 12"&gt;&#13;
&lt;TD vAlign=top&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;/&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&#13;
&lt;TD vAlign=top&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;Date separator.&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&#13;
&lt;TR style="mso-yfti-irow: 13; mso-yfti-lastrow: yes"&gt;&#13;
&lt;TD vAlign=top&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;Any other character &lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&#13;
&lt;TD vAlign=top&gt;&#13;
&lt;P&gt;&lt;FONT size=2&gt;Other characters are matched as literals.&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&#13;
&lt;P&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;So to parse our sample date, you&amp;#8217;d use this string:&lt;/P&gt;&#13;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;&lt;SPAN style="mso-tab-count: 1"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;// Parse an RFC1123 date&lt;BR&gt;&lt;SPAN style="mso-tab-count: 1"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;DateTime dt = DateTime.ParseExact(&amp;#8220;19930214T131030&amp;#8221;, &amp;#8220;yyyyMMddTHHmmss&amp;#8221;);&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&#13;
&lt;P&gt;The help covers this stuff fairly well, once you find the documentation.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Look for &amp;#8216;&lt;A href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguide/html/cpconstandarddatetimeformatstrings.asp"&gt;Standard DateTime Format Strings&lt;/A&gt;&amp;#8217; and &amp;#8216;&lt;A href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguide/html/cpconcustomdatetimeformatstrings.asp"&gt;Custom DateTime Format Strings&lt;/A&gt;&amp;#8217; if you haven&amp;#8217;t found what you need here (and let me know, so I can add it).&lt;/P&gt;&#13;
&lt;P&gt;If you&amp;#8217;re receiving strings in a number of formats and you&amp;#8217;re not really sure what you&amp;#8217;re going to get (like, say, if you&amp;#8217;re writing a program that does something with RSS feed data), it&amp;#8217;s convenient that you can pass in multiple format specifiers to ParseExact.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;For example:&lt;/P&gt;&#13;
&lt;P style="MARGIN: 0in 0in 6pt; TEXT-INDENT: 0.5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;string[] formats = new string[] { &amp;#8220;r&amp;#8221;, &amp;#8220;s&amp;#8221;, &amp;#8220;u&amp;#8221;, &amp;#8220;yyyyMMddTHHmmss&amp;#8221; };&lt;BR&gt;&lt;SPAN style="mso-tab-count: 1"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;DateTime dt = DateTime.ParseExact(dateString, formats, CultureInfo.InvariantCulture, DateTimeStyles.AdjustToUniversal);&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&#13;
&lt;P&gt;This is most likely to get you a date you can use.&lt;/P&gt;&#13;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description><pubDate>Thu, 01 Sep 2005 19:17:08 GMT</pubDate></item>