DateTime.ParseExact()比DateTime.Parse()快吗?我想知道ParseExact是否比Parse快。我认为它应该是ParseExact,因为你已经给出了格式,但我也认为所有对文化信息的检查都会减慢它的速度。Microsoft是否在任何文档中说明了两者之间的性能差异。要使用的格式是通用的“yyyy/MM/dd”格式。例如:DateTime.Parse(DateText);DateTime.ParseExact(DateText,"yyyy/MM/dd",CultureInfo.InvariantCulture);您要求两种具有不同功能(接近但仍然不同)的方法的速度差异。只需选择最合适的。不,几乎从未记录过库方法的性能。但我可以告诉您一些有关此差异的信息:如果您只为TryParseExact指定一种格式,那么它会尝试。Parse会尝试所有格式,直到找到最佳匹配或找到第一个匹配。(我不确定是哪一个。)几周前我用自定义CultureInfo做了这个。我没有测试性能,但我确实在数据库中存储的61,880个日期上对我的解析方法(没有自定义CultureInfo,见下文)进行了单元测试。我没有注意到任何性能问题。无论您是否指定CultureInfo,如果未传递任何内容,内部解析例程都将使用CultureInvariant。因此,CultureInfo不会减慢该过程。(由于需要额外的解析,希伯来语和其他“异国情调”的日期会影响性能。)根据我对DateTime源代码的审查,字符串格式的数量决定了这些例程解析日期字符串的速度。速度。格式越多,速度越慢。如果您只指定一个,解析速度与使用...Exact方法一样快。以上就是C#学习教程:IsDateTime.ParseExact()fasterthanDateTime.Parse()?分享的所有内容,如果对你有用,需要了解更多C#学习教程,希望大家多多关注—ImportsSystem.GlobalizationPublicClassExifDateTimePrivateShared_formats()AsString=NewString(){_"yyyy:MM:dd",_"yyyy:MM:ddHH:mm:ss",_"yyyy:MM:ddHH:mm:ss.f",_"yyyy:MM:ddHH:mm:ss.ff",_"yyyy:MM:ddHH:mm:ss.fff",_"yyyy:MM:ddHH:mm:ss.fffK",_"yyyy:MM:ddHH:mm:ss.ffffffK",_"yyyy:MM:ddHH:mm:ssK",_""}公共共享函数Parse(ByValsAsString)AsDateDimoResultAsDateIfTryParse(s,DateTimeStyles.None,oResult)=FalseThenThrowNewFormatExceptionEndIfReturnoResultEndFunctionPublicSharedFunctionParse(ByValsAsString,ByValstyleAsSystem.Globalization.DateTimeStyles)A??sDateDimoResultAsDateIfTryParse(s,style,oResult)=False然后抛出新的FormatExceptionEndIfReturnoEndFunctionPublicSharedFunctionTryParse(ByValsAsString,ByRefresultAsDate)AsBoolean返回TryParse(s,DateTimeStyles.None,result)EndFunctionPublicSharedFunctionTryParse(ByValsAsString,ByValstyleAsSystem.Globalization.DateTimeStyles,ByRefresultAsDate)AsBooleanDimfResultAsBooleanDimoResultant作为日期fResult=Date.TryParseExact(s,_formats,CultureInfo.InvariantCulture,style,oResultant)IffResultThenresult=oResultantEndIfReturnfResultEndFunctionEndClass明源:
