如何将字符串日期:“Mon Nov 12 08:00:00 ICT 2012”转换为“dd / MM / yyyy HH:mm:ss”格式的C#

时间:2012-11-05 10:03:33

标签: c# datetime

这是我的转换方式,但它不起作用:

 string date = "Mon Nov 12 08:00:00 ICT 2012";
 DateTime dateConvert = 
          DateTime.ParseExact(date, 
                              "dd/MM/yyyy HH:mm:ss", 
                              System.Globalization.CultureInfo.InvariantCulture);

 Console.WriteLine(dateConvert);

那么,如何转换呢?三江源!

5 个答案:

答案 0 :(得分:2)

DateTime.ParseExact的格式字符串应为ddd MMM dd HH:mm:ss 'ICT' yyyy

有关DateTime格式字符串的详细信息,请参阅http://msdn.microsoft.com/en-us/library/8kb3ddd4.aspx

答案 1 :(得分:0)

PARSE EXACT意味着你要告诉它:

dd/MM/yyyy HH:mm:ss

但你的输入字符串不是那种格式!!!

您需要以下内容:

 ddd MMM dd HH:mm:ss \I\C\T yyyy

答案 2 :(得分:0)

你遇到的错误是你提供给DateTime.ParseExact的格式应该是日期字符串的格式,而不是你想要的格式。

尝试类似:

string date = "Mon Nov 12 08:00:00 ICT 2012";
DateTime dateConvert = DateTime.ParseExact(date, "ddd MMM dd HH:mm:ss 'ICT' yyyy", null);
Console.WriteLine(dateConvert.ToString("dd/MM/yyyy HH:mm:ss"));

答案 3 :(得分:0)

string date = "Mon Nov 12 08:00:00 ICT 2012";

DateTime d = DateTime.ParseExact(date, "ddd MMM dd HH:mm:ss ICT yyyy", null);

Console.WriteLine(d.ToString("dd/MM/yyyy HH:mm:ss"));

答案 4 :(得分:0)

非常感谢!这是我的解决方案,它很酷!

DateTime dateTime = DateTime.ParseExact("Mon Nov 12 08:00:00 ICT 2012", "ddd MMM dd HH:mm:ss ICT yyyy", CultureInfo.InvariantCulture);
            Console.WriteLine(dateTime.ToString("MM/dd/yyyy"));