112 votes

Comment obtenir le nom du mois en C# ?

Comment faire pour trouver le nom du mois en C# ? Je ne veux pas écrire un énorme switch déclaration ou if déclaration sur le mois int . En VB.Net, vous pouvez utiliser MonthName() mais qu'en est-il du C# ?

186voto

Jason Heine Points 5743

Vous pouvez utiliser le 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 placer dans des méthodes d'extension, ce qui vous permettra d'écrire moins de code par la suite. Cependant, vous pouvez les implémenter comme vous le souhaitez.

Voici un exemple de la façon de procéder à 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 vous aidera !

132voto

Jon Skeet Points 692016

Utilisez le spécificateur de format "MMMM" :

string month = dateTime.ToString("MMMM");

15voto

George Stocker Points 31258
string CurrentMonth = String.Format("{0:MMMM}", DateTime.Now)

9voto

Binamra Points 105

Supposons que votre date est aujourd'hui. J'espère que cela vous aidera.

DateTime dt = DateTime.Today;

string thisMonth= dt.ToString("MMMM");

Console.WriteLine(thisMonth);

7voto

RobV Points 13708

Si vous souhaitez simplement utiliser MonthName, vous devez faire référence à Microsoft.VisualBasic, qui se trouve dans Microsoft.VisualBasic.DateAndTime.

//eg. Get January
String monthName = Microsoft.VisualBasic.DateAndTime.MonthName(1);

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X