Date getYear(

Galera, tenho uma data em milisegundos armazenada em uma Date, e quando eu obtenho a data com o método toLocaleString(), ele me retorna a data e hora certinha, mas quando tento obter apenas o ano com o método getYear() ele exibe apenas 106 quando deveria exibir 2006.

Alguem pode me da uma força?
Abraços.

Ola,

Bom, a classe java.util.Date é uma classe bem desatualizada… mas se vc olhar na api do método getYear() dela vera que ela te retorna algo que vc deve somar com 1900, assim se ela ta te retornando 106, e vc somar com 1900 tera o 2006.

Aconselho o uso para manipulação de Datas pelo java.util.GregorianCalendar…

[code]GregorianCalendar cal = new GregorianCalendar();
cal.setTime(data);

int ano = cal.get(Calendar.YEAR);[/code]

Atualizada você quer dizer né?!

[quote=“jairelton”][code]GregorianCalendar cal = new GregorianCalendar();
cal.setTime(data);

int ano = cal.get(Calendar.YEAR);[/code]

Atualizada você quer dizer né?![/quote]

Não não… desatualizada mesmo, em relação aos seus metodos de acesso…

Então, os metodos estão como deprecated justamente porque a classe foi atualizada, foram retirados dela esse tipo de atribuições, a ideia de Date agora é somente manter os dados da data, qualquer coisa que você tenha que fazer com ela, está em outras classes…