Como identificar se o dia é seg,ter,qua,qui,sex,sab ou dom, de uma determinha data "ex:04/05/1997"
8 respostas
C
cabralsan
Alô pessoal, preciso de uma ajuda.
Como faço para identificar se o dia caiu numa seg,ter,qua,qui,sex,sab ou dom, de uma determinha data “ex:04/05/1997”. Existe algum método na classe Date ou Calendar que me possibilite isso?
cabralsan, no exemplo que eu te passei você faz isso em UMA linha apenas.
C
cabralsan
Ok meu caro, Obrigado pela ajuda, mas tenho outra dúvida, já fiz alguns testes com os métodos da classe calendar mas não tive o resultado ideal:
É o seguinte, se o mês é FEVEREIRO por ex, como saber se esse mês é de 28, 30, 31 dias?
Se puderem ajudar eu agradeço!
G
garcia-jj
cabralsan:
É o seguinte, se o mês é FEVEREIRO por ex, como saber se esse mês é de 28, 30, 31 dias?
Se puderem ajudar eu agradeço!
Lá tem um método Calendar.getActualMaximum(xx), sendo esse XX o campo que você quer. Por exemplo
Calendar now = Calendar.getInstance();
int numOfDays = now.getActualMaximum(Calendar.DAY_OF_MONTH);
Nesse caso ele retorna o numero máximo do dia do mês.
Abraços
Obrigado mais uma vez!
Se alguém quizer usar a lógica abaixo para obter o último dia de um mês de algum ano, ai vai :
Stringdata="08/06/2009";//informe qualquer data neste formato.Stringformato="dd/MM/yyyy";Dated=newSimpleDateFormat(formato).parse(data);Calendarcal=Calendar.getInstance();cal.setTime(d);intdia=d.getDate();//dia informado na dataintValorMes=d.getMonth();//mes informado na dataintAno=d.getYear()+1900;//ano informado na dataintmesAtual=d.getMonth()+1;Stringmes;switch(mesAtual){case1:mes="Janeiro";cal.set(Ano,ValorMes,dia);break;case2:mes="Fevereiro";cal.set(Ano,ValorMes,dia);break;case3:mes="Março";cal.set(Ano,ValorMes,dia);break;case4:mes="Abril";cal.set(Ano,ValorMes,dia);break;case5:mes="Maio";cal.set(Ano,ValorMes,dia);break;case6:mes="Junho";cal.set(Ano,ValorMes,dia);break;case7:mes="Julho";cal.set(Ano,ValorMes,dia);break;case8:mes="Agosto";cal.set(Ano,ValorMes,dia);break;case9:mes="Setembro";cal.set(Ano,ValorMes,dia);break;case10:mes="Outubro";cal.set(Ano,ValorMes,dia);break;case11:mes="Novembro";cal.set(Ano,ValorMes,dia);break;default:mes="Dezembro";cal.set(Ano,ValorMes,dia);break;}System.out.println("Dia :"+dia);System.out.println("Ano :"+Ano);System.out.println("Mês : "+mes);System.out.println("O último dia do mês de "+mes+" do Ano de "+Ano+" é: "+cal.getActualMaximum(cal.DAY_OF_MONTH));