[RESOLVIDO] Soma de duas Horas

Pessoal, estou com uma dúvida , andei pesquisando e não encontrei algo que me ajudasse. Tenho duas strings horas: 03:45:00 e 16:55:00, por exemplo, neste formato(HH:mm:ss), e gostaria de somar estes dois valores de horas.

Alguem tem alguma dica ou solução?

Cara essa aplicação é web ou desktop ?

porque se for web eu tenho um função javascript que faz isso para vc

tipo vc passa duas horas e ele subtrai

flow

Vo procurar aqui se acho a função

pode dar um exemplo de como quer o resultado??? Somar os getTime() dos objetos Date não funciona? (claro, tratando o segundo objeto para subtrair a Data inteira)

é pra jsp… se vc tem a função em javascript, dá certo também…

O resultado seria 03:45:00 + 16:55:00 = 20:40:00

cara,
num outro post aqui no guj mesmo já tinha um topico desses

http://www.guj.com.br/java/39574-somar-horas

Tucano eu tinha lido este tópico, a função que realiza a soma, realiza a soma com a hora do momento com as horas , minutos e segundos informados… gostaria de realizar com duas horas informadas.

Usando o mesmo codigo do outro post

	public static void main(String[] args) throws ParseException {
		GregorianCalendar gc = new GregorianCalendar();

		SimpleDateFormat sdf2 = new SimpleDateFormat("HH:mm:ss");
		Time time = new Time(2, 30, 0);
		gc.setTimeInMillis(time.getTime());

		gc.add(Calendar.HOUR, 1);
		gc.add(Calendar.MINUTE, 0);

		System.out.println("HORA SOMADA: " + sdf2.format(gc.getTime()));
	}

paezani, tentou algo como:

SimpleDateFormat smp = new SimpleDateFormat("HH:ii:ss");
Date data1 = smp.parse("04:11:34");
Date data2 = smp.parse("16:16:24");
Date data3 = new Date(data2.getTime());
data3.setHours(0);
data3.setMinutes(0);
data3.setSeconds(0);

Date dataResultado = new Date(data1.getTime() + data2.getTime() - data3.getTime());

Não lembro agora, mas dava para fazer com a Classe Calendar, que é mais recomendado que usar setHours, setMinutes e setSeconds.

(não testei o código)

cara fiz uma solução aqui tbm

import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
import com.sun.org.apache.xerces.internal.impl.xpath.regex.ParseException;

public class Horas {
    
    public static void main(String[] args) throws ParseException {
        GregorianCalendar gc = new GregorianCalendar();
        
        gc.setTime(new Date());
        
        SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");
        gc.set(0, 0, 0, 03, 45, 00);
        System.out.println("HORA ATUAL: " + sdf.format(gc.getTime()));
        
        gc.add(Calendar.HOUR, 16);
        gc.add(Calendar.MINUTE, 55);
        gc.add(Calendar.SECOND, 00);
        
        System.out.println("HORA SOMADA: " + sdf.format(gc.getTime()));
        
    }
}

Valeu pela ajuda ae pessoal!!!
Consegui resolver desta maneira:

 GregorianCalendar gc = new GregorianCalendar();   

String v="03:45:44";
String v="06:33:22";
		    
		    int hora = Integer.parseInt(v.substring(0,2));
		    System.out.println(hora);
		    int min = Integer.parseInt(v.substring(3,5));
		    System.out.println(min);
		    int seg = Integer.parseInt(v.substring(6,8));
		    System.out.println(seg);
		  
		    SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");   
		    SimpleDateFormat sdf2 = new SimpleDateFormat("HH:mm:ss");   
		    Time time = new Time(hora, min, seg);   
		    gc.setTimeInMillis(time.getTime());   
		  
		    hora = Integer.parseInt(v2.substring(0,2));
		    System.out.println(hora);
		    min = Integer.parseInt(v2.substring(3,5));
		    System.out.println(min);
		    seg = Integer.parseInt(v2.substring(6,8));
		    System.out.println(seg);

		    gc.add(Calendar.HOUR,hora);
		    gc.add(Calendar.MINUTE,min);
		    gc.add(Calendar.SECOND,seg);  
		  
		    System.out.println("HORA SOMADA: " + sdf2.format(gc.getTime()));
			return sdf2.format(gc.getTime());
1 curtida