Olá, o código cal.get(Calendar.MONTH) retorna mês 3 e não 4.
O relógio e data da minha máquina estão corretos. “quarta-feira, 29 de abril de 2009”
No painel de controle->Opções regionais e de idioma está tudo configurado para Brasil.
Sistama Win XP Pro.
Se alguém souber o porquê, eu agradeço.
[code]public class TesteData {
public static void main(String[] args) {
GregorianCalendar dataAtual = new GregorianCalendar();
Date data = dataAtual.getTime();
Calendar cal = null;
cal = Calendar.getInstance();
cal.setTime( data );
try {
int horas = cal.get(Calendar.HOUR_OF_DAY);
System.out.println("horas: " + horas);
int minutos = cal.get(Calendar.MINUTE);
System.out.println("minutos: " + minutos);
int segundos = cal.get(Calendar.SECOND);
System.out.println("segundos: " + segundos);
int ano = cal.get(Calendar.YEAR);
System.out.println("Ano: " + ano);
int mes = cal.get(Calendar.MONTH);
System.out.println("mes: " + mes);
int dia = cal.get(Calendar.DAY_OF_MONTH);
System.out.println("dia: " + dia);
} catch (Exception e) {
e.printStackTrace();
}
}
}[/code]
Saída:
horas: 11
minutos: 43
segundos: 50
Ano: 2009
[color=red]mes: 3[/color] <-- deveria ser 4
dia: 29