how do I specify the timezone on a DateFormat string?
<p>I'm trying to specify the timezone on a string that I am passing to <code>DateFormat.parse</code>. We're currently using .net framework 2.0. Current code is</p>

<pre><code>DateTimeFormatInfo DATE_FORMAT = CultureInfo.CurrentCulture.DateTimeFormat;
DateTime first = DateTime.Parse("Wed, 31 Oct 2007 8:00:00 -5", DATE_FORMAT);
</code></pre>

<p>But then when I do <code>first.ToString("r")</code>, the result is </p>

<pre><code>Wed, 31 Oct 2007 09:00:00 GMT
</code></pre>

<p>What am I doing wrong? I also tried using <code>DateTime.SpecifyKind</code> method to set my DateTime object's Kind to Local, but it seems like you would need to specify the kind as local before you parse the string, if the timezone is part of the string.</p>

<p>My local timezone is EDT, that's what I'm ultimately trying to get this date to.</p>

<p>Edit - our solution:</p>

<p>input : </p>

<pre><code>DateTime first = DateTime.SpecifyKind(DateTime.Parse("OCT 31, 2007 8:00 AM", DATE_FORMAT), DateTimeKind.Local);
</code></pre>

<p>output : </p>

<pre><code>first.ToLocalTime().ToString("our format")
</code></pre>

<p>Still haven't found a way to get time zone abbreviation, like 'EDT'.</p>
