C# - 将月份名称转换为月份号码的最佳方式

时间:2016-05-03 22:33:07

标签: c# date date-conversion

C#中是否有一个函数可以将月份名称更改为相应的月份号?如果没有,我应该制作一个方法(比如使用' Switch"或某些循环功能)来实现这个目标吗?

我问,因为我想要干净的代码,而不是在我的代码中乱七八糟。提前致谢

2 个答案:

答案 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;