将字符串格式"yyyy-MM-ddTHH:mm:ss.fffZ"转换为DateTime

Cal*_*unt 6 c# datetime

我知道这个问题已经被问到了很多不同的方式,而且我已经看过它们了,所有解决方案似乎都不适合我.所以,我希望你们也许能给我一个快速的帮助.

输入字符串为:"2000-01-01T12:00:000Z".我需要获取该输入字符串并将其转换为DateTime,以便它可以存储在数据库中.

我一直在使用ParseExact,但我一直收到未识别的日期字符串异常.我哪里错了?

inValue.LatestDepartTime = "2000-01-01T12:00:000Z";
DateTime _latestDepartTime = DateTime.ParseExact(inValue.LatestDepartTime, "yyyy-MM-dd HH:mm:ss.fff", CultureInfo.InvariantCulture);
Run Code Online (Sandbox Code Playgroud)

SLa*_*aks 6

您的格式字符串需要与输入完全匹配.

这包括文字TZ字符.

  • 你应该使用参数; SQL Server不应该知道或关心字符串格式. (3认同)

Moh*_*d f 6

yyyy-MM-dd'T'HH:mm:ss.fff'Z'

代码是:

public DateTime convertIsoToDateTime (string iso)
{
    return DateTime.ParseExact(iso, "yyyy-MM-dd'T'HH:mm:ss.fff'Z'", CultureInfo.InvariantCulture);
}
Run Code Online (Sandbox Code Playgroud)


dan*_*n04 5

您需要在格式字符串中包含\\T\\Z匹配文字TZ.