olá pessoal, estou fazendo um pequeno sistemas que preciza somas os dia ou meses que são inserido e mostra a data correspodente ao resultado, exemplo:
é inserido 4 = dia atual 15/05/2012 a 19/05/2012.
alguem pode me ajudar?
olá pessoal, estou fazendo um pequeno sistemas que preciza somas os dia ou meses que são inserido e mostra a data correspodente ao resultado, exemplo:
é inserido 4 = dia atual 15/05/2012 a 19/05/2012.
alguem pode me ajudar?
[quote=Antonio Carlos M. Gomes]olá pessoal, estou fazendo um pequeno sistemas que preciza somas os dia ou meses que são inserido e mostra a data correspodente ao resultado, exemplo:
é inserido 4 = dia atual 15/05/2012 a 19/05/2012.
alguem pode me ajudar?[/quote]
Você pode ou usar os milissegundos do Date e converter para dias:
long milissegundos = dataPosterior.getTime() - dataAnterior.getTime();
double dias = milissegundos / 1000 / 60 / 60 / 24;
Acho que funciona, você tem que ir dividindo pra converter de milissegundos pra dia.
Ou pode usar o JodaTime, se for possível pra você, fica tão simples quanto int dias = Days.daysBetween(dataAnterior, dataPosterior).getDays();
[code]public Date geravencimento(Date data){
Calendar calendar = Calendar.getInstance();
calendar.setTime(data);
calendar.add(Calendar.DATE, 30);
return calendar.getTime();
}
[/code]
vc pode usar o java.util.Calendar
Calendar calendar = Calendar.getInstance();//obtem a data atual
calendar.add(Calendar.DAY_OF_MONTH, 4);//avança 4 dias da data atual
System.out.println(calendar.getTime());//imprime a nova data
Esse exemplo do JodaTime não faz o que é pretendido.
DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
Calendar today = Calendar.getInstance();
today.add(Calendar.DATE, 4);
System.out.println("Nova data: " + df.format(today.getTime()));
Ah sim, entendi errado a dúvida. Desculpa