C# - 将月份名称转换为月份编号的最佳方式
C# - Best way to convert Month names to their month number
C# 中是否有函数可以将月份名称更改为相应的月份编号?如果没有,我是否应该制作一种方法(例如使用“Switch”或某些循环功能)使之成为可能?
我问是因为我想要干净的代码,而不是在我的代码中弄得一团糟。提前致谢
DateTime.ParseExact(monthName, "MMMM", CultureInfo.CurrentCulture).Month
您可以使用:
Convert.ToDateTime(monthName + " 01, 1900").Month;
或
Array.IndexOf(DateTimeFormatInfo.CurrentInfo.MonthNames,
monthName.ToLower(CultureInfo.CurrentCulture)) + 1;
还有
Array.FindIndex(DateTimeFormatInfo.CurrentInfo.MonthNames,
m => m.Equals(monthName, StringComparison.OrdinalIgnoreCase)) + 1;
C# 中是否有函数可以将月份名称更改为相应的月份编号?如果没有,我是否应该制作一种方法(例如使用“Switch”或某些循环功能)使之成为可能?
我问是因为我想要干净的代码,而不是在我的代码中弄得一团糟。提前致谢
DateTime.ParseExact(monthName, "MMMM", CultureInfo.CurrentCulture).Month
您可以使用:
Convert.ToDateTime(monthName + " 01, 1900").Month;
或
Array.IndexOf(DateTimeFormatInfo.CurrentInfo.MonthNames,
monthName.ToLower(CultureInfo.CurrentCulture)) + 1;
还有
Array.FindIndex(DateTimeFormatInfo.CurrentInfo.MonthNames,
m => m.Equals(monthName, StringComparison.OrdinalIgnoreCase)) + 1;