Convertendo segundos para hh:mm:ss

5 respostas
A

Olá

Tenho um atributo que indica a duração de um evento em segundos.
Quero imprimir esse valor no formato hh:mm:ss, por exemplo, caso a duração seja 159s gostaria de imprimir como 00:02:39

Tentei algumas opções aqui sem resultados. Alguém tem alguma sugestão de como fazer isso?

desculpem, talvez coloquei este post seção errada.

5 Respostas

T

Pelo método bobo:

1 h = 3600 segundos, 1 minuto = 60 segundos

int segundos = 4567;

int segundo = segundos % 60;

int minutos = segundos / 60;

int minuto = minutos % 60;

int hora = minutos / 60;

String hms = String.format ("%02d:%02d:%02d", hora, minuto, segundo);

System.out.println (hms); // deve mostrar “01:16:07”
A

thingol:
Pelo método bobo:

1 h = 3600 segundos, 1 minuto = 60 segundos

int segundos = 4567;

int segundo = segundos % 60;

int minutos = segundos / 60;

int minuto = minutos % 60;

int hora = minutos / 60;

String hms = String.format ("%02d:%02d:%02d", hora, minuto, segundo);

System.out.println (hms); // deve mostrar “01:16:07”</blockquote>

Gostei disso, a parte de determinar o número de horas, minutos e segundos eu já tinha feito mas tinha feito a formatação de um jeito mais braçal:

<blockquote>

NumberFormat nf = NumberFormat.getInstance();

nf.setMinimumIntegerDigits(2);

String s = nf.format(hour) + “h” + nf.format(min) + “m” + nf.format(sec) + “s”;</blockquote>

Acho que com o String.format fica mais elegante.

Obrigado

[b]Devia ter testado antes de falar hehehehe, num tem o método format da classe String, pelo menos não no 1.4.2
Eu devia ter desconfiado do %02d isso num é C??

[/b] :oops: :oops: :oops: :oops: :oops:

leonardom

agasea:

[b]Devia ter testado antes de falar hehehehe, num tem o método format da classe String, pelo menos não no 1.4.2
Eu devia ter desconfiado do %02d isso num é C??

[/b] :oops: :oops: :oops: :oops: :oops:

Isso é Java 1.5, no C vc tbem tem isso.

O método format da Classe String só existe no Java 1.5

A

leonardom:
agasea:

[b]Devia ter testado antes de falar hehehehe, num tem o método format da classe String, pelo menos não no 1.4.2
Eu devia ter desconfiado do %02d isso num é C??

[/b] :oops: :oops: :oops: :oops: :oops:

Isso é Java 1.5, no C vc tbem tem isso.

O método format da Classe String só existe no Java 1.5

Imaginei…

Aliás, uma boa adição, creio!

logan

Olha amigão …
talves isso aki te ajude …

http://java.sun.com/j2se/1.5.0/docs/api/java/text/SimpleDateFormat.html

Abçs

Criado 22 de junho de 2006
Ultima resposta 22 de jun. de 2006
Respostas 5
Participantes 4