我想给日期时间格式异常
string date = "31.03.2013"
转换为DateTime
。这是我的代码:
Convert.ToDateTime(date,CultureInfo.InvariantCulture);
我得到一个格式异常。
根据http://msdn.microsoft.com/en-us/library/vstudio/cc165448.aspx它应该工作。 谢谢
我想给日期时间格式异常
string date = "31.03.2013"
转换为DateTime
。这是我的代码:
Convert.ToDateTime(date,CultureInfo.InvariantCulture);
我得到一个格式异常。
根据http://msdn.microsoft.com/en-us/library/vstudio/cc165448.aspx它应该工作。 谢谢
不变文化是基于en-US
,其中.
不是日期分隔符。
您需要使用正确的文化,如fr-FR
,它使用.
作为日期分隔符。
您也可以使用DateTime.ParseExact
或DateTime.TryParseExact
以及确切的格式字符串。
Convert.ToDateTime("31.03.2013", CultureInfo.GetCultureInfo("fr-FR"))
或者
DateTime.ParseExact("31.03.2013",
"dd.MM.yyyy",
CultureInfo.InvariantCulture)
会工作。
如何
DateTime.ParseExact(date,"dd.MM.yyyy",null);
你可以尝试使用DateTime.ParseExact方法。它应该为你做诡计。
DateTime.ParseExact("31.03.2013", "dd.MM.yyyy", CultureInfo.InvariantCulture);
使用此代码 -
DateTime.ParseExact(date, "dd.MM.yyyy", CultureInfo.InvariantCulture);
您可以DateTime.TryParseExact试试这个:
string date = "31.03.2013";
DateTime dateConverted;
DateTime.TryParseExact(date, new string[] { "dd.MM.yyyy" }, System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.None, out dateConverted);
Console.WriteLine(dateConverted);
的例子中的链接已经展示了如何正确地做到这一点。 – 2013-03-25 11:05:44