在c#中将整数转换为月份名的最佳方法是什么?

有没有一种最好的方法来在.net中整数变成月份名称?

显然,我可以启动一个date时间string,并parsing月份名称。 这似乎是一个巨大的浪费时间。

从DateTimeFormatInfo尝试GetMonthName

http://msdn.microsoft.com/en-us/library/system.globalization.datetimeformatinfo.getmonthname.aspx

你可以这样做:

CultureInfo.CurrentCulture.DateTimeFormat.GetMonthName(1); 

用正确的名称空间和对象更新:

 //This was wrong //CultureInfo.DateTimeFormat.MonthNames[index]; //Correct but keep in mind CurrentInfo could be null DateTimeFormatInfo.CurrentInfo.MonthNames[index]; 

为什么不只是使用somedatetime.ToString("MMMM")

您可以使用Microsoft.VisualBasic命名空间中的静态方法:

 string monthName = Microsoft.VisualBasic.DateAndTime.MonthName(monthInt, false); 
 DateTime dt = new DateTime(year, month, day); Response.Write(day + "-" + dt.ToString("MMMM") + "-" + year); 

这样,你的月份将按照他们的名字显示,而不是整数。

要获得缩写的月份值,可以使用Enum.Parse();

 Enum.Parse(typeof(Month), "0"); 

这会产生“Jan”的结果。

记住这是从零开始的索引。