如何通过单次调用DateTime.ParseExact来接受两位数和四位数年份?

Wil*_*oss 6 c# datetime parsing

我正在DateTime.ParseExact使用自定义格式字符串调用.NET "MM/dd/yyyy h:mmt".此字符串处理四位数年份但不是两位数年份.有没有办法在单个ParseExact调用中处理这两种情况?我试过"MM/dd/yy h:mmt",它只处理两位数的情况.

Ode*_*ded 19

您可以在此重载上传递第二个参数的格式字符串数组ParseExact- 这将包括2年和4年变体.

DateTime.ParseExact(myDateTime, 
                    new []{"MM/dd/yy h:mmt", "MM/dd/yyyy h:mmt"},
                    CultureInfo.InvariantCulture,
                    DateTimeStyles.None)
Run Code Online (Sandbox Code Playgroud)