2011-06-27 8 views
5

Próbuję sformatować datę, aby wyglądać w ten sposób: „dzień mm/dd/yyyy” dla że używam coś takiego: "dddd, " + dateFormatInfo.ShortDatePattern Rzecz ShortDatePattern wydaje się być specyficzna dla aktualnych informacji o kulturze. na przykład dostaję: fr_FR: Lundi 27/06/2011 gb_GB: poniedziałek 27/06/2011, kiedy powinien być poniedziałek 06/27/2011 Mam nadzieję, że jestem wolny.Formatowanie termin „dzień dd/mm/rrrr”

[Aktualizacja] Chciałem ciąg automatycznie pomiędzy „dd/mm/rrrr” i „dd/mm/rrrr” w zależności od bieżącej aktualizacji kultury i pomyślałem ShortDatePattern nie załatwi, ale faktycznie robi ! tylko że w en_GB to wciąż "dd/mm/rrrr" [/ Aktualizacja]

[Rozwiązane]
DateTime date;
date.ToString("dddd, " + CurrentCultureInfo.DateTimeFormat.ShortDatePattern);

Odpowiedz

5

Jeśli zawsze chcą data wzór być MM/dd/yyyy, a następnie określić, że:

string format = "dddd, MM/dd/yyyy"; 

Należy zauważyć, że część "/" jest również zależna od ustawień narodowych; jeśli chcesz być zawsze do przodu-slash, należy uciec:

string format = "dddd, MM'/'dd'/'yyyy"; 

Jeśli to nie to, czego szukaliśmy, zaktualizuj swoje pytanie, aby wyjaśnić dokładnie, co robisz (z próbką kod), wynik, który otrzymujesz, i oczekiwany rezultat.

+0

PO chciała dd/mm/rrrr nie dd/mm/rrrr. Zobacz moją odpowiedź powyżej. –

+0

@Chris: Ostatnie zdanie zawiera: "kiedy powinno być poniedziałek 26.06.2011" - innymi słowy, miesiąc pierwszy. Podobnie: "Próbuję sformatować datę tak, aby wyglądała następująco:" dzień mm/dd/rrrr "" –

+0

Przepraszam, masz rację. Patrzyłem na tytuł pytania dd/mm/rrrr, który jest oczywiście wyjściem, a nie pożądanym wyjściem. –

1

można użyć następujących:

DateTime date; 
date.ToString("dddd, MM/dd/yyyy");