Data - como somar?

7 respostas
rodrigoboeing

Galera tudo bem??

Estou com uma dúvida…

Tenho um campo no meu sistema onde carrego a hora atual do PC, como mostra o código abaixo…

SimpleDateFormat data = new SimpleDateFormat("dd/MM/yyyy"); JTFDataEmprestimo.setText(data.format(new Date()));

Esse JTFDataEmprestimo é um JTextField onde eu mostro a Data na tela para o usuário, só que eu preciso também de outro campo que pegue essa data e some mais 7 dias…
Tipo esse campo é a data de empréstimo de alguma coisa, e eu vou ter a data de devolução que é em 7 dias…

Alguém sabe como fazer???

Aguardo a resposta…
valew galera…
t+++
:smiley:

7 Respostas

Romulo_Fagundes

Olha se ajuda…

http://java.sun.com/j2se/1.4.2/docs/api/java/util/Calendar.html#add(int, int)

Esse método do Calendar ele adiciona, conforme a constante.

Qualquer dúvida, só repasar…

rodrigoboeing

Opa blz…

Kra eu fucei ai no link mais não entendi muita coisa… Fuçando aqui no GJ achei esse comando que define cada parte da data separadamente… Olha o códdigo abaixo…

Date data2 = new Date(); Calendar c = new GregorianCalendar(); c.setTime(data2); int dia = c.get(Calendar.DAY_OF_MONTH); int mes = c.get(Calendar.MONTH) + 1; int ano = c.get(Calendar.YEAR);

Só que não sei como mostrar a data em um JTextField, e também como fazer a soma de 7 dias…

ta ae
valewwww
:smiley:

rodrigoboeing

Já consegui mostrar a data no JTextField assim…

Date data2 = new Date(); Calendar c = new GregorianCalendar(); c.setTime(data2); int dia = c.get(Calendar.DAY_OF_MONTH); int mes = c.get(Calendar.MONTH) + 1; int ano = c.get(Calendar.YEAR); JOptionPane.showMessageDialog(null, dia+"/"+ mes+"/"+ ano);

agora só falta conseguir fazer a soma…

71C4700

não teria como converter 7 dias pra milisegundos e somas com a respectiva data, atraves do metodo que retorna em milisegundos ?
Ai voce somaria em milisegundos e transfomaria pra Date, novamente.
Abraços

rodrigoboeing

Kra não entendi nada o que vc disse, nem faço idéias de como pode ser feito isso ai...

Eu fiz assim...

Date data2 = new Date();  
        Calendar c = new GregorianCalendar();  
        c.setTime(data2);   
        int dia = c.get(Calendar.DAY_OF_MONTH);  
        int mes = c.get(Calendar.MONTH) + 1;   
        int ano = c.get(Calendar.YEAR);

        int diadevolucao = dia+7;

        this.JTFDataEmprestimo.setText(diadevolucao+"/"+ mes+"/"+ ano);

blz, ele funciona só que tem um problema se for dia 26/09/2008, ele vai somar + 7 e vai ficar dia 33/09/2008 o que não existe...

Mikhas

Meu caro…

public Date somaDias(Date data, int dias) {
	Calendar cal = new GregorianCalendar();
	
	cal.setTime(data);

	cal.add(Calendar.DAY_OF_MONTH, dias);

	return cal.getTime();
}
71C4700

Gostei da solução. Tambem aprendi muito !

Criado 23 de setembro de 2008
Ultima resposta 26 de set. de 2008
Respostas 7
Participantes 4