Feedback

C# - Monat: Zahl zu Gekürztem String

Veröffentlicht von am 08.02.2013
(2 Bewertungen)
Ich weiß nicht ob es irgendeinen anderen/besseren Weg gibt und weil die Methode doch eher lang ist und früher oder später braucht man sie doch... :P

string month = MonthToShortString(12, Language.Deutsch);

setzt month auf "Dez"!
string month = MonthToShortString(5, Language.English);

setzt month auf "May"

Natürlich kann man:
1. Weitere Sprachen hinzufügen ;)
2. Die Sprachen ändern
3. Eine Sprache entfernen
4. Die Methode auf Ganze Namen umformen

[Edit]: Also es gibt einen besseren Weg:
Von Jan in den Kommentaren. Ich habs nicht getestet, aber vertrau ihm einfach mal..
GFU-Schulungen  [Anzeige]

ASP.NET 2.0 und 3.5

Dieser Kurs vermittelt Ihnen alle Erweiterungen von Microsoft ASP.NET 2.0. Zu diesen zählen u. a. Data Bindung, Master Pages, und Security.

XML und .NET Überblick

Um auf dem neuesten Wissensstand zu sein, sollten Sie unser aktuelles ASP .NET Komplett Seminar belegen.
Nach dem Seminar kennen Sie die wichtigsten Strömungen in der Software-Technologie

enum Language {Deutsch, English};

private string MonthToShortString(int month, Language l)
{
    string strMonth = String.Empty;
    switch (month)
    {
        case 1:
            strMonth = "Jan";
            break;
        case 2:
            strMonth = "Feb";
            break;
        case 3:
            switch (l)
            {
                case Language.Deutsch:
                    strMonth = "Mär";
                    break;
                case Language.English:
                    strMonth = "Mar";
                    break;
            }
            break;
        case 4:
            strMonth = "Apr";
            break;
        case 5:
            switch (l)
            {
                case Language.Deutsch:
                    strMonth = "Mai";
                    break;
                case Language.English:
                    strMonth = "May";
                    break;
            }
            break;
        case 6:
            strMonth = "Jun";
            break;
        case 7:
            strMonth = "Jul";
            break;
        case 8:
            strMonth = "Aug";
            break;
        case 9:
            strMonth = "Sep";
            break;
        case 10:
            switch (l)
            {
                case Language.Deutsch:
                    strMonth = "Okt";
                    break;
                case Language.English:
                    strMonth = "Oct";
                    break;
            }
            break;
       case 11:
            strMonth = "Nov";
            break;
        case 12:
            switch (l)
            {
                case Language.Deutsch:
                    strMonth = "Dez";
                    break;
                case Language.English:
                    strMonth = "Dec";
                    break;
            }
            break;
    }
    return strMonth;
}
Abgelegt unter String, Monat, Gekürzt.

2 Kommentare zum Snippet

Jan Welker schrieb am 08.02.2013:
Hallo Darius,
hier etwas kürzer:

private string MonthToShortString(int month, CultureInfo culture)
{
if (month < 1 || month > 12) throw new ArgumentException("Invalid month.");
Thread.CurrentThread.CurrentCulture = culture;
return new DateTime(2013, month, 1).ToString("MMM");
}


Beispielaufrufe:

Console.WriteLine(MonthToShortString(1, new CultureInfo("de-DE")));
Console.WriteLine(MonthToShortString(1, new CultureInfo("en-US")));
dariusarnold schrieb am 10.02.2013:
Cool.. Danke :D Bin nicht so der Pro.. Aber ich probier mal ^^das^^.
:)
 

Logge dich ein, um hier zu kommentieren!