在c#中将字符串转换为DateTime

Gra*_*ant 21 c# string datetime

转换使用创建的以下日期的最简单方法是什么?

dateTime.ToString("yyyyMMddHHmmss", CultureInfo.InvariantCulture)
Run Code Online (Sandbox Code Playgroud)

成为一个适当的DateTime对象?

20090530123001
Run Code Online (Sandbox Code Playgroud)

我试过Convert.ToDateTime(...)但得了一个FormatException.

And*_*are 31

试试这个:

DateTime.ParseExact(str, "yyyyMMddHHmmss", CultureInfo.InvariantCulture);
Run Code Online (Sandbox Code Playgroud)

如果字符串的格式可能不正确(并且您希望避免异常),则可以使用如下DateTime.TryParseExact方法:

DateTime dateTime;
DateTime.TryParseExact(str, "yyyyMMddHHmmss",
    CultureInfo.InvariantCulture, DateTimeStyles.None, out dateTime);
Run Code Online (Sandbox Code Playgroud)