.net - sistema - obtener mes actual en visual basic
¿La mejor manera de convertir un entero en un nombre de mes en c#? (6)
¿Por qué no simplemente usar somedatetime.ToString("MMMM")
?
¿Hay alguna forma de convertir un entero en su nombre de mes en .net?
Obviamente, puedo girar una fecha y hora para enhebrarlo y analizar el nombre del mes a partir de ahí. Eso simplemente parece una gran pérdida de tiempo.
Actualizado con el espacio de nombre y el objeto correctos:
//This was wrong
//CultureInfo.DateTimeFormat.MonthNames[index];
//Correct but keep in mind CurrentInfo could be null
DateTimeFormatInfo.CurrentInfo.MonthNames[index];
Para obtener el valor abreviado del mes, puede usar Enum.Parse();
Enum.Parse(typeof(Month), "0");
Esto producirá "Jan" como resultado.
Recuerde que este es un índice basado en cero.
Pruebe GetMonthName desde DateTimeFormatInfo
http://msdn.microsoft.com/en-us/library/system.globalization.datetimeformatinfo.getmonthname.aspx
Puedes hacerlo por:
CultureInfo.CurrentCulture.DateTimeFormat.GetMonthName(1);
Puede usar un método estático del espacio de nombres Microsoft.VisualBasic
:
string monthName = Microsoft.VisualBasic.DateAndTime.MonthName(monthInt, false);
DateTime dt = new DateTime(year, month, day);
Response.Write(day + "-" + dt.ToString("MMMM") + "-" + year);
De esta forma, su mes se mostrará por su nombre, no por número entero.