Преобразование месяца в месяц
Я просто пытался использовать структуру DateTime
для преобразования целого числа от 1 до 12 в сокращенное название месяца.
Вот что я пробовал:
DateTime getMonth = DateTime.ParseExact(Month.ToString(),
"M", CultureInfo.CurrentCulture);
return getMonth.ToString("MMM");
Однако я получаю FormatException
в первой строке, потому что строка не является допустимой DateTime
. Может ли кто-нибудь сказать мне, как это сделать?
Ответы
Ответ 1
CultureInfo.CurrentCulture.DateTimeFormat.GetMonthName(1);
Подробнее см. здесь.
или
DateTime dt = DateTime.Now;
Console.WriteLine( dt.ToString( "MMMM" ) );
Или, если вы хотите получить название сокращенное.
GetAbbreviatedMonthName(1);
Ссылка
Ответ 2
var monthIndex = 1;
return month = DateTimeFormatInfo.CurrentInfo.GetAbbreviatedMonthName(monthIndex);
Вы также можете попробовать этот
Ответ 3
Вместо этого вы можете сделать что-то подобное.
return new DateTime(2010, Month, 1).ToString("MMM");
Ответ 4
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");