2016-01-06 12 views
5

Używam składnika SWT DateTime i ma format amerykański, gdy wyświetlany (mm/dd/rrrr).SWT Zmiana formatu daty DateTime

Czy istnieje sposób na zmianę formatu na dd/mm/rrrr?

+1

Czy próbowałeś z Simple Date Formatter? post Kod, w którym otrzymujesz datę i o/p –

+2

Uważam, że format daty jest ustalany przez ustawienia regionalne systemu operacyjnego. (PS mm/dd/rrrr byłby raczej amerykańskim niż angielskim, zwykle używa się dd/mm/rrrr) –

+0

Mgławica Eclipse [CDateTime] (http://eclipse.org/nebula/widgets/cdatetime/cdatetime.php) obsługuje więcej formatów dla daty i czasu. –

Odpowiedz

1

Musisz ustawić ustawienia regionalne, aby zmienić format daty, np. do Włoch who use dd/mm/yyyy:

Locale.setDefault(Locale.ITALY); 

Alternatywą jest Nebula CDateTime Widget: https://www.eclipse.org/nebula/widgets/cdatetime/cdatetime.php

(btw: jeśli używasz Linuksa jest błąd odnośnie regionalne: https://bugs.eclipse.org/bugs/show_bug.cgi?id=248075)

+0

"np. Do Włoch, którzy używają mm/dd/rrrr:" Zakładam, że miałeś napisać "dd/mm/rrrr"? –

+0

oops, tak! dzięki za podpowiedź :) –

+0

SWT DateTime ma ** nie ** użyj ustawień regionalnych Java, aby określić format daty i czasu. Zamiast tego używa ustawień regionalnych systemu operacyjnego, tak jak to opisuje @wero w swojej odpowiedzi. –

2

DateTimeuses OS określone preferencje użytkownika, aby sformatować datę. (W systemie Windows są to Opcje regionalne i językowe w ustawieniach systemowych).

Możliwe obejście jest opisane here (przewiń w dół do ostatnich dwóch wpisów). Ale sam tego nie próbowałem.