Calculando datas

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