Pessoal, criei um método para me retornar dia, data e hora do sistema, para isto usei a classe Date e seus métodos(getDay, getHours, getMinutes). O retorno destes métodos eu converto para String, concateno tudo e retorno um String com dia, data e hora. Quando fiz o debug notei que a data e hora vieram certinhas, mas o dia me retorna sempre 0. Alguém sabe o que pode ser???
Código usado e no print anexo a tela de debug mostrando que a variável dia ficou com valor 0:
[code]//MÉTODO QUE BUSCA E RETORNA DIA, HORA E MINUTO DO SISTEMA
private String buscarDiaHoraMinutoSistema(){
String diaHoraMin = null;
String dia = null;
String hora = null;
String minuto = null;
Date date = new Date();
dia = String.valueOf(date.getDay());
hora = String.valueOf(date.getHours());
minuto = String.valueOf(date.getMinutes());
diaHoraMin = “Dia:” + dia + " hora:" + hora + " Minuto:" + minuto;
Cara, esses métodos que você está invocando estão depreciados! Qual a IDE que você está usando?
Você resolve o seu problema da seguinte forma:
private void assimQueSePegaEssasInformacoes() {
Calendar calendar = Calendar.getInstance();
calendar.setTime(new Date());
int dia = calendar.get(Calendar.DAY_OF_MONTH);
int hora = calendar.get(Calendar.HOUR_OF_DAY);
int minuto = calendar.get(Calendar.MINUTE);
}
Está retornando zero pois este método retorna um inteiro representando o dia da semana, e não do mês. Curiosamente, 0 representa o domingo.
De toda forma todos estes métodos que você está utilizando já estão marcados como “Deprecated” na API. Utilize a classe Calendar no lugar de Date.
Por exemplo:
Calendar hoje = Calendar.getInstance (); // pega data atual do sistema.
hoje.get (Calendar.DAY_OF_MONTH); // retorna o dia do mês
o método getDay da classe Date retorna o dia da semana, começando em Domingo.
Logo, hoje, domingo, retorna zero; amanhã, segunda, retornará 1…etc
Calendar cal = new GregorianCalendar();
int era = cal.get(Calendar.ERA); // 0=AC, 1=DC
int year = cal.get(Calendar.YEAR); // 2010
int month = cal.get(Calendar.MONTH); // 0=Jan, 1=Fev, ...
int day = cal.get(Calendar.DAY_OF_MONTH); // 24...
Valeu!!! Verifiquei aqui, realmente o getDay(depreciado) retorna o dia da semana. Usei o getDate e retornou o dia certinho.
Mais uma dúvida, como a classe date esta depreciada, seria melhor usar o calendar então??? Apesar da classe date com o método getDate funcionar corretamente.