Comment trouver le nom du mois en C #? Je ne veux pas écrire une switch
déclaration ou une déclaration énorme if
sur le mois int
. Dans VB.Net, vous pouvez utiliser MonthName()
, mais qu'en est-il de C #?
Comment trouver le nom du mois en C #? Je ne veux pas écrire une switch
déclaration ou une déclaration énorme if
sur le mois int
. Dans VB.Net, vous pouvez utiliser MonthName()
, mais qu'en est-il de C #?
Réponses:
Vous pouvez utiliser CultureInfo pour obtenir le nom du mois. Vous pouvez même obtenir le nom court du mois ainsi que d'autres choses amusantes.
Je vous suggère de les mettre dans des méthodes d'extension, ce qui vous permettra d'écrire moins de code plus tard. Cependant, vous pouvez mettre en œuvre comme vous le souhaitez.
Voici un exemple de la façon de le faire à l'aide de méthodes d'extension:
using System;
using System.Globalization;
class Program
{
static void Main()
{
Console.WriteLine(DateTime.Now.ToMonthName());
Console.WriteLine(DateTime.Now.ToShortMonthName());
Console.Read();
}
}
static class DateTimeExtensions
{
public static string ToMonthName(this DateTime dateTime)
{
return CultureInfo.CurrentCulture.DateTimeFormat.GetMonthName(dateTime.Month);
}
public static string ToShortMonthName(this DateTime dateTime)
{
return CultureInfo.CurrentCulture.DateTimeFormat.GetAbbreviatedMonthName(dateTime.Month);
}
}
J'espère que cela t'aides!
InvariantInfo
propriété qui peut également être utilisée. Et, à mon avis, ce qui suit est un format plus simple / lisible pour faire cela: DateTimeFormatInfo.InvariantInfo.GetAbbreviatedMonthName(...)
ouDateTimeFormatInfo.CurrentInfo.GetAbbreviatedMonthName(...)
string CurrentMonth = String.Format("{0:MMMM}", DateTime.Now)
private string MonthName(int m)
{
string res;
switch (m)
{
case 1:
res="Ene";
break;
case 2:
res = "Feb";
break;
case 3:
res = "Mar";
break;
case 4:
res = "Abr";
break;
case 5:
res = "May";
break;
case 6:
res = "Jun";
break;
case 7:
res = "Jul";
break;
case 8:
res = "Ago";
break;
case 9:
res = "Sep";
break;
case 10:
res = "Oct";
break;
case 11:
res = "Nov";
break;
case 12:
res = "Dic";
break;
default:
res = "Nulo";
break;
}
return res;
}