Wie findet man den Monatsnamen in C #? Ich möchte keine große switch
Erklärung oder if
Erklärung über den Monat schreiben int
. In VB.Net können Sie verwenden MonthName()
, aber was ist mit C #?
Wie findet man den Monatsnamen in C #? Ich möchte keine große switch
Erklärung oder if
Erklärung über den Monat schreiben int
. In VB.Net können Sie verwenden MonthName()
, aber was ist mit C #?
Antworten:
Sie können CultureInfo verwenden, um den Monatsnamen abzurufen. Sie können sogar den kurzen Monatsnamen sowie andere lustige Dinge erhalten.
Ich würde vorschlagen, dass Sie diese in Erweiterungsmethoden einfügen, mit denen Sie später weniger Code schreiben können. Sie können jedoch implementieren, wie Sie möchten.
Hier ist ein Beispiel für die Verwendung von Erweiterungsmethoden:
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);
}
}
Hoffe das hilft!
InvariantInfo
Eigenschaft gibt, die auch verwendet werden kann. Und meiner Meinung nach ist das Folgende ein einfacheres / lesbareres Format dafür: DateTimeFormatInfo.InvariantInfo.GetAbbreviatedMonthName(...)
oderDateTimeFormatInfo.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;
}