如何将具有异常格式的字符串转换为datetime

Jon*_*ski 4 c# datetime

我正在使用.NET 3.5,我的日期以字符串形式出现,格式如下:

1月20日星期二20:47:43 GMT 2009

第一个问题,该格式的名称是什么?第二个问题,将此字符串转换为日期时间最简单,最清晰的方法是什么?如果可能的话,我希望能够使用.net API/Helper方法.

编辑:我忘了提到我已经尝试过使用DateTime.Parse和Convert.ToDateTime.这些都没有奏效.

TLi*_*ebe 11

您可以将DateTime.TryParseExact()方法与合适的格式字符串一起使用.看到这里

编辑:尝试这样的事情:

        DateTime dt;
        System.Globalization.CultureInfo enUS = new System.Globalization.CultureInfo("en-US"); 

        if ( DateTime.TryParseExact( "Tue Jan 20 20:47:43 GMT 2009", "ddd MMM dd H:mm:ss \"GMT\" yyyy", enUS, System.Globalization.DateTimeStyles.NoCurrentDateDefault , out dt  ))
        {
            Console.WriteLine(dt.ToString() );
        }
Run Code Online (Sandbox Code Playgroud)