C#中是否有一个函数可以将月份名称更改为相应的月份号?如果没有,我应该制作一个方法(比如使用' Switch"或某些循环功能)来实现这个目标吗?
我问,因为我想要干净的代码,而不是在我的代码中乱七八糟。提前致谢
答案 0 :(得分:12)
DateTime.ParseExact(monthName, "MMMM", CultureInfo.CurrentCulture).Month
答案 1 :(得分:0)
您可以使用:
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;