字符串未被识别为有效的DateTime

时间:2011-06-09 11:07:58

标签: c#

我正在将英国日期格式字符串转换为美国格式以将其保存到数据库中,但它会引发错误“字符串未被识别为有效的日期时间。”

string dateString = "13/06/2011";
DateTime dt = DateTime.Parse(dateString);

我也尝试了这个但同样的例外。

DateTime aa = DateTime.ParseExact(dateString, "MM/dd/yyyy", new System.Globalization.CultureInfo("en-GB"));

请让我知道如何将字符串中的英国格式日期转换为美国日期格式。

感谢。

3 个答案:

答案 0 :(得分:7)

您指定了错误的格式。它应该是dd/MM/yyyy

var dateString = "13/06/2011";
var aa = DateTime.ParseExact(dateString, "dd/MM/yyyy", CultureInfo.CurrentCulture);

答案 1 :(得分:3)

具有en-GB文化的

DateTime.Parse可以正常工作:

string dateString = "13/06/2011";

DateTime aa = DateTime.Parse(dateString, new CultureInfo("en-GB"));
// aa.Day == 13
// aa.Month == 6
// aa.Year == 2011

string result = aa.ToString("d", new CultureInfo("en-US"));
// result == "6/13/2011"

答案 2 :(得分:-3)

试试这个

DateTime dt = DateTime.Parse(dtString,
System.Threading.Tread.CurrentThread.CurrentCultur e.DateTimeFormat);