在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”的结果。
记住这是从零开始的索引。