situação atípica com SimpleDateFormat

3 respostas
tiagosilveira

Pessoal estou com uma situação atípica com SimpleDateFormat.
Sempre usei sem me preocupar com o lingua(Accept-Language) do browser, mas hoje me deparrei com uma situação estranha.
Se o meu browser estiver setado en_US o seguinte comando me retorna data ao contrario.

System.out.println(new SimpleDateFormat("yyyy-MM-dd 00:00:00").format(data));

Normalmente me retornaria 2010-08-16 00:00:00 porém está me retornando 2010-16-08 00:00:00 tudo isso por causa do Accept-Language(Browser) do request que esta setando en_US ao invés de pt_BR.

Tem como contornar isso?

3 Respostas

von.juliano

Você tentou passar o Locale no construtor do SimpleDateFormat?

System.out.println(new SimpleDateFormat("yyyy-MM-dd 00:00:00", new Locale("pt", "BR")).format(data));

Vê se resolve! Flw! :thumbup:

E

Para evitar a criação excessiva de objetos SimpleDateFormat em uma aplicação Web (que é inerentemente multi-threaded), pode-se tentar usar um ThreadLocal, tal como descrito no blog do Thingol:

tiagosilveira

Bah veio…isso foi a primeira coisa que eu tentei fazer.
Não funciona.

Criado 16 de agosto de 2010
Ultima resposta 16 de ago. de 2010
Respostas 3
Participantes 3