Подтвердить что ты не робот

Преобразование месяца в месяц

Я просто пытался использовать структуру DateTime для преобразования целого числа от 1 до 12 в сокращенное название месяца.

Вот что я пробовал:

DateTime getMonth = DateTime.ParseExact(Month.ToString(), 
                       "M", CultureInfo.CurrentCulture);
return getMonth.ToString("MMM");

Однако я получаю FormatException в первой строке, потому что строка не является допустимой DateTime. Может ли кто-нибудь сказать мне, как это сделать?

4b9b3361

Ответ 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");