ola pessoalestou com um probleminha com o jCalendar
preciso do dia marcado no jcalendar mas ao inves disso ele retorna um numero para cada dia da semana
ex:
clica num domingo: print = 0
clica numa segunda: print = 1
clica numa terça: print = 2
etc..
desculpa amigo acho q nao soube me expressar bem, o que eu quero é o dia do mes
tipo dia 21,22 ou 30
do jeito que esta ele se eu seleciono o dia 11(hoje) ele me retorna o numero 0 pq é domingo
o correto seria ele retornar o numero 11 ou se der para retornar a data como DD/MM/AAAA OU AAAA/MM/DD melhor ainda
alisson027
ninguém sabe ???
S
spidermanx
Fala ae cara beleza,
Por questões de boa prática, para se trabalhar com datas aconselho você utilizar a classe Calendar pois a classe Date possui algumas métodos deprecated (obsoletos):
Você pode converter a data da sua variavel jCalendar1 direto para Calendar dessa forma:
Calendarcalendario=jCalendar1.getCalendar();//RETORNA O CALENDARIO PARA EXTRAIR O QUE QUISER DA DATASystem.out.print(calendario.get(Calendar.DAY_OF_MONTH));//IMPRIME APENAS O DIA DO MES
Dessa forma você consegue trazer a data bastando apenas informar ao get o numero inteiro (representados por atributos finais da classe Calendar) o que quer retornar.
Faz uns testes ai cara e posta pra gente se deu tudo certo ou errado.
Espero ter ajudado, falou e abraço.
S
spidermanx
Havia me esquecido, para trazer a data formatada utilize a classe SimpleDateFormat:
Nesse caso você não precisa converter o jCalendar1 para Calendar, apenas peque o metodo getDate() como você tinha feito antes:
SimpleDateFormatconvert=newSimpleDateFormat("dd/MM/aaaa");//OBERSEVE OS CARACTERES MAIUSCULOS NO MESSystem.out.println("Data formatada: "+convert.format(jCalendar1.getDate()));
Acho que com esses recursos você consegue arquivar esse B.O. rsrsrsrs, falou e abraço e não esquece de postar se caso algo der errado.
alisson027
spidermanx como a turma demoro um poco pra respode tive q me virar um pouco aki hehehe
mas ficou assim:
pq os retornos são diferentes se é o mesmo metodo getDate para os dois
e os valores vem de uma mesma fonte jCalendar1
alisson027
mensagem duplicada
S
spidermanx
Fala ai alisson027, referente sua dúvida:
O método getDate() não é o mesmo para os dois, apesar de visualmente eles dizerem o contrátio por terem o mesmo nome (assinatura).
Porém em java, não é por que os métodos possuem o mesmo nome (assinatura) que eles vão ou devem trazer a mesma coisa entende?
Seria algo mais ou menos assim.
JCalendarjCalendar1=newJCalendar();DatedataCompleta=jCalendar1.getDate();// aqui a classe JCalendar te retorna uma classe Date com data completa.Datedata1=dataCompleta;// aqui vc recebe a data completa que foi carregada acimaintdia=data1.getDate();// da data completa que eu peguei eu quero só o dia do mês
E quanto sua dúvida não tem nada de ignorante e se vc não pergunta não terá respostas certo?
É por esses tipos de conflitos, além da classe Date já possuir bastante coisa obsoleta (deprecated) que te aconselho a estudar/conhecer fortemente a classe Calendar, segue a referência da API: http://download.oracle.com/javase/1.5.0/docs/api/java/util/Calendar.html, pois além de ser mais utilizada, você tem mais opções para resgatar o que quiser da data e sem fazer tanta gambiarra entende.