Лучший способ превратить целое число в название месяца в c #? - PullRequest
121 голосов
/ 20 октября 2008

Есть ли лучший способ превратить целое число в название месяца в .net?

Очевидно, я могу раскрутить дату и время, чтобы натянуть ее и разобрать название месяца оттуда. Это просто кажется гигантской тратой времени.

Ответы [ 6 ]

262 голосов
/ 20 октября 2008

Попробуйте GetMonthName из DateTimeFormatInfo

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

Вы можете сделать это:

CultureInfo.CurrentCulture.DateTimeFormat.GetMonthName(1);
20 голосов
/ 20 октября 2008

Обновлено с правильным пространством имен и объекта:

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

//Correct but keep in mind CurrentInfo could be null
DateTimeFormatInfo.CurrentInfo.MonthNames[index];
20 голосов
/ 20 октября 2008

Почему бы просто не использовать somedatetime.ToString("MMMM")?

7 голосов
/ 20 октября 2008

Вы можете использовать статический метод из пространства имен Microsoft.VisualBasic:

string monthName = Microsoft.VisualBasic.DateAndTime.MonthName(monthInt, false);
6 голосов
/ 04 сентября 2012
DateTime dt = new DateTime(year, month, day);
Response.Write(day + "-" + dt.ToString("MMMM") + "-" + year);

Таким образом, ваш месяц будет отображаться по имени, а не по целому числу.

2 голосов
/ 18 сентября 2009

Чтобы получить сокращенное значение месяца, вы можете использовать Enum.Parse();

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

В результате будет получено "Jan".

Помните, что это нулевой индекс.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...