DateTime.Parse始终在特定区域性中引发异常

Bil*_*Dvd 8 .net c#

我有一些旧的日志文件,我必须解析 - 显然日期时间保存如下:18/12/2012 11:09:39 pm - 我所有尝试解析这些都失败了.我完全迷失了 - 任何帮助或方向都会很棒!

 CultureInfo cultureInfo = new CultureInfo( "es-MX" , true );
        string date = "18/12/2012 11:09:39 p.m.";

        DateTime dt = new DateTime( 2012 , 12 , 18 , 11 , 9 , 39 ).AddHours( 12 );

        this.richTextBox1.Text += date + Environment.NewLine;
        this.richTextBox1.Text += dt.ToString( cultureInfo ) + Environment.NewLine;
        this.richTextBox1.Text += dt.ToString() + Environment.NewLine;

        foreach ( var item in richTextBox1.Lines )
        {
            try
            {
               DateTime d=  DateTime.Parse( item );
               this.richTextBox1.Text += d.ToString() + Environment.NewLine ;

            }
            catch ( Exception ee)
            {
                this.richTextBox1.Text += ee.Message + Environment.NewLine ;

            }
        }
Run Code Online (Sandbox Code Playgroud)

Bil*_*Dvd 3

日志文件中的某些日期是正确的,某些日期的格式以 pm 或 pm 结尾。上面的所有方法似乎都失败了 - 是的,我尝试了所有方法:( 这是我对问题的破解/修复:

     CultureInfo cultureInfo = new CultureInfo( "es-MX" , true );
     Date = DateTime.Parse( date.Replace( "p. m." , "PM" ).Replace( "p.m." , "PM" ).Replace( "." , "" ).ToUpper() , cultureInfo );
Run Code Online (Sandbox Code Playgroud)