2016-12-29 23 views
0

在da-DK文化线程上运行时,它会爆炸并显示“字符串未被识别为有效的日期时间”。一种文化日期时间字符串到不同的文化日期时间字符串

var dt = DateTime.Parse("12/29/2016 4:55:00 PM"); 

我会一直期待是什么“29-12-2016 16时55分00秒”。

UPDATE

可制取的日期时间值,应该能够解析它来回。

DateTime dt = DateTime.Parse("12/29/2016 4:55:00 PM", CultureInfo.InvariantCulture); 
    Console.WriteLine(Thread.CurrentThread.CurrentCulture.ToString() + " " + dt); 

    Thread.CurrentThread.CurrentCulture = new CultureInfo("en-US"); 
    DateTime dt1 = DateTime.Parse("29-12-2016 16:55:00", CultureInfo.InvariantCulture); 
    Console.WriteLine(Thread.CurrentThread.CurrentCulture.ToString() + " " + dt1); 

最后一个Parse也导致异常。

+2

[String.FormatException与日期时间在非美国文化](可能的重复http://stackoverflow.com/questions/2338023/string-formatexception-with-datetime-in-非美国文化) –

+0

您的异常是由“InvarientCulture”解析造成的。需要用“da-DK”来解析。 – doobop

+0

我真的不清楚你想在这里做什么。您将*实际*以什么格式接收数据? –

回答

0

试试这个:

DateTime.ParseExact("29-12-2016 16:55:00", "dd-MM-yyyy HH:mm:ss", CultureInfo.InvariantCulture);