将月份int转换为月份名称
我只是试图使用DateTime
结构将1和12之间的整数转换成简化的月份名称。
这是我试过的:
DateTime getMonth = DateTime.ParseExact(Month.ToString(), "M", CultureInfo.CurrentCulture); return getMonth.ToString("MMM");
但是,我得到一个FormatException
在第一行,因为该string不是一个有效的DateTime
。 谁能告诉我如何做到这一点?
CultureInfo.CurrentCulture.DateTimeFormat.GetMonthName(1);
请参阅这里了解更多细节。
要么
DateTime dt = DateTime.Now; Console.WriteLine( dt.ToString( "MMMM" ) );
或者如果你想得到文化特定的缩写名称。
GetAbbreviatedMonthName(1);
参考
var monthIndex = 1; return month = DateTimeFormatInfo.CurrentInfo.GetAbbreviatedMonthName(monthIndex);
你也可以试试这个
你可以做这样的事情,而不是。
return new DateTime(2010, Month, 1).ToString("MMM");
CultureInfo.CurrentCulture.DateTimeFormat.GetMonthName( Convert.ToInt32(e.Row.Cells[7].Text.Substring(3,2))).Substring(0,3) + "-" + Convert.ToDateTime(e.Row.Cells[7].Text).ToString("yyyy");