如何在c#中将字符串转换为日期

时间:2014-04-14 11:05:19

标签: c# string datetime

我的日期字符串格式如"04/16/2014 19:10",我想将其转换为DateTime。

我试过,在代码下方,但它没有用。我收到错误,如“字符串未被识别为有效的日期时间。”

如何转换为日期时间

DateTime dt1 = DateTime.Parse(DateTimeString);

DateTime dt = System.Convert.ToDateTime(DateTimeString);

2 个答案:

答案 0 :(得分:3)

问题是Parse,正如您使用它时,会考虑到当前的机器文化,这意味着(取决于您的位置)日期可能会有不同的解释。

每当您解析特定的日期时,您应该使用ParseExactTryParseExact,这样就不会对如何解释日期产生歧义(无论文化如何) )

DateTime dt;
if (DateTime.TryParseExact("04/16/2014 19:10", "MM/dd/yyyy hh:mm", 
    CultureInfo.InvariantCulture, DateTimeStyles.None, out dt))
{
    // date was parsed correctly, use `dt`
}

答案 1 :(得分:1)

您可能希望使用ParseExact并自行指定格式:

DateTime d = DateTime.ParseExact("04/16/2014 19:10", "MM/dd/yyyy HH:mm", CultureInfo.InvariantCulture);