Entwickler-Ecke

C# - Die Sprache - Konvertierung von DateTime zu String mit CultureInfo-Klasse


alegria - Fr 19.02.10 10:04
Titel: Konvertierung von DateTime zu String mit CultureInfo-Klasse
Hey!

Also wie man aus einem String (z.B. "12. Juni 2008") durch Parsen und unter Angabe der CultureInfo ein DateTime-Objekt bekommt, ist ja hinlänglich in MSDN beschrieben (http://msdn.microsoft.com/de-de/library/2h3syy57.aspx)

Ich möchte aber gern den anderen Weg gehen. Also umgekehrt. Aus einem DateTime einen String abhängig von der CultureInfo.

D.h. aus dem DateTime (6/12/2008 12:00:00 AM) soll bei CultureInfo deutsch "12. Juni 2008" und bei CultureInfo englisch "June 12, 2008" ausgegeben werden.

Geht sowas überhaupt???
Wenn ja wie???

Danke im Voraus für Eure Hilfe...


JüTho - Fr 19.02.10 10:13

Hallo,

wie wäre es mit etwas mehr Eigeninitiative? Wozu liefert die SDK-Doku/MSDN/Hilfe so viele Erläuterungen und Beispiele?

1. Wie holt man zu einem Objekt einen passenden String? Genau, immer mit ToString.
2. Also schau nach, wie DateTime.ToString definiert ist.
3. Na sowas, da gibt es Überladungen, die auch IFormatProvider als Argument nutzen.
4. Schau nach, was diese beiden Varianten machen und wie sie ablaufen.

Jürgen


alegria - Fr 19.02.10 12:18

Okay, hast ja Recht! Manchmal muss einfach ein bisschen drauf gestoßen werden. ;)

Danke trotzdem!!!


C#-Quelltext
1:
2:
3:
4:
5:
6:
DateTime dt = dateTimePicker1.Value;
CultureInfo MyCultureInfo1 = new CultureInfo("de-DE");
CultureInfo MyCultureInfo2 = new CultureInfo("en-US");

MessageBox.Show("Deutsch: " + dt.ToString("MMMM", MyCultureInfo1));
MessageBox.Show("Englisch: " + dt.ToString("MMMM", MyCultureInfo2));