Incrementar segundos na data e hora

7 respostas
homisinho

ola,
tenho o seguinte problema…

uma variavel de data que e iniciada com a data “01/01/1980 00:00:00”, logo apos sera somado uma variavel valor q contem um determinado numero de segundos decorridos apartir da data anterior, essa soma devera resultar uma data e hora atuais…
daonde eu tenho q retirar separadamente o ano,mes, dia, hora, minuto…
c alguem tiver uma ideia de como eu posso fazer isso…
eu to com um probleminha em como somar os segundos…

SimpleDateFormat formato = new SimpleDateFormat("dd/MM/yyyy hh:mm:ss"); Date data = formato.parse("01/01/1980 00:00:00"); h1=dados[2+posi]; h2=dados[3+posi]; h3=dados[4+posi]; h4=dados[5+posi]; valor=(((((h4*256)+h3)*256)+h2)*256)+h1; data.setTime(data.getTime()+(valor-899)); GregorianCalendar DHleit = new GregorianCalendar(); DHleit.setTime(data); ano=DHleit.get(GregorianCalendar.YEAR); mes=DHleit.get(GregorianCalendar.MONTH); dia=DHleit.get(GregorianCalendar.DAY_OF_MONTH); min=DHleit.get(GregorianCalendar.MINUTE); hora=DHleit.get(GregorianCalendar.HOUR_OF_DAY);

desde ja obrigado.

7 Respostas

T

cara num consegui entender seu problema não

fale mais sobre ele

homisinho

eu tenho uma data inicial “01/01/1980 00:00:00” por isso passo pra variavel data essa data aqui…

SimpleDateFormat formato = new SimpleDateFormat("dd/MM/yyyy hh:mm:ss"); Date data = formato.parse("01/01/1980 00:00:00");

bom agora eu tenho uma variavel inteira “valor” que esta valendo 859449559 segundos, ai eu tenho q somar a variavel data com a variavel valor…
essa soma deve gerar outra data e hora…

data.setTime(data.getTime()+valor);

so q tem um problema esse codigo ai n funciona… ele n ta transformando os segundos da variavel valor em dia mes ano hora e minuto…

entende?

erickcellani

naum sei bem se é isso que vc quer!!...

mas ai está!!

public static void main(String[] args) {
		
		Calendar calendar = Calendar.getInstance();
		
		calendar.setTime(new Date());
		//O segundo paramentro mostra qnts segundos vc quer adicionar!
		calendar.add(Calendar.SECOND, 60);
		System.out.print(calendar.getTime());
	}
:D
homisinho

como eu posso iniciar o calendar com a data que eu preciso…passando o valor em string como parametro “01/01/1980 00:00:00”…???

erickcellani

vc inicia o calendar com um dado do tipo java.util.Date…

intaum é só vc inicializar uma variavel do tipo Date com a data que vc quer!

erickcellani
código mastigado:
public static void main(String[] args) {
		
		SimpleDateFormat formato = new SimpleDateFormat("dd/MM/yyyy hh:mm:ss");
		Date data = null;
		try {
			data = formato.parse("01/01/1980 00:00:00");
		} catch (ParseException e) {
			e.printStackTrace();
		}
		
		//01/01/1980 00:00:00
		Calendar calendar = Calendar.getInstance();
		
		calendar.setTime(data);
		calendar.add(Calendar.SECOND, 60);
		System.out.print(calendar.getTime());
	}

:D

homisinho

valeu ai cara…
funcionou blz!!!

Criado 24 de maio de 2007
Ultima resposta 24 de mai. de 2007
Respostas 7
Participantes 3