Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

String was not recognized as a valid DateTime ParseExact

Tags:

c#

.net

I am trying to parse a date in c# and have the following line of code

DateTime.ParseExact(DateSelected, "ddd MMM dd HH:mm:ss zzz yyyy", Culture)

when I debug DateSelected is coming in as "Tue Feb 16 12:36:41 CST 2010" but I get an expection saying "String was not recognized as a valid DateTime."

like image 541
Deathbat Avatar asked Feb 02 '10 19:02

Deathbat


1 Answers

Following this previous question, zone abbreviations are not recognized. Try this:

DateTime parsed = DateTime.ParseExact(
    "Tue Feb 16 12:36:41 CST 2010".Replace("CST", "+02:00"), 
    "ddd MMM dd HH:mm:ss zzz yyyy",
    new CultureInfo("en-GB"));

This links can also be useful:

  • Time zone abbreviations
  • TZ4Net Library
  • Time Zones in the .NET Framework
like image 106
Rubens Farias Avatar answered Nov 15 '22 00:11

Rubens Farias