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

时间:2008-10-20 15:51:48

标签: .net parsing date

是否有最好的方法可以将整数转换为.net中的月份名称?

显然,我可以启动一个日期时间来串起它并解析月份名称。这似乎是一个巨大的浪费时间。

6 个答案:

答案 0 :(得分:262)

从DateTimeFormatInfo

尝试GetMonthName

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

您可以通过以下方式完成:

CultureInfo.CurrentCulture.DateTimeFormat.GetMonthName(1);

答案 1 :(得分:20)

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

答案 2 :(得分:20)

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

//This was wrong
//CultureInfo.DateTimeFormat.MonthNames[index];

//Correct but keep in mind CurrentInfo could be null
DateTimeFormatInfo.CurrentInfo.MonthNames[index];

答案 3 :(得分:7)

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

string monthName = Microsoft.VisualBasic.DateAndTime.MonthName(monthInt, false);

答案 4 :(得分:6)

DateTime dt = new DateTime(year, month, day);
Response.Write(day + "-" + dt.ToString("MMMM") + "-" + year);

这样,您的月份将按名称显示,而不是按整数显示。

答案 5 :(得分:2)

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

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

这将产生“Jan”结果。

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