SORU
9 Mart 2009, PAZARTESİ


Nasıl Java "X dakika x saniye" Milisaniye dönüştürmek için?

Bir kullanıcı benim programda bir şey başlar zamanı System.currentTimeMillis() kullanarak kayıt yapmak istiyorum. Ne zaman bitirir bitirmez, ben çıkarma mevcut System.currentTimeMillis() start değişken ve göstermek istiyorum onları geçen süre kullanan bir insan okunabilir format gibi "XX saat, XX dakika XX saniye" ya da "XX dakika XX saniye" çünkü onun değil büyük olasılıkla almak birisi bir saat.

Bunu yapmak için en iyi yolu nedir?

CEVAP
9 Mart 2009, PAZARTESİ


1.5 beri java.util.concurrent.TimeUnit sınıf, aşağıdaki gibi kullanabilirsiniz:

String.format("%d min, %d sec", 
    TimeUnit.MILLISECONDS.toMinutes(millis),
    TimeUnit.MILLISECONDS.toSeconds(millis) - 
    TimeUnit.MINUTES.toSeconds(TimeUnit.MILLISECONDS.toMinutes(millis))
);

Tam TimeUnit sınıfı desteği olmayan sistemler için 1.5 aşağıda ya da Java sürümleri için (API önce Android sürümü 9 gibi), aşağıdaki denklem kullanılabilir:

int seconds = (int) (milliseconds / 1000) % 60 ;
int minutes = (int) ((milliseconds / (1000*60)) % 60);
int hours   = (int) ((milliseconds / (1000*60*60)) % 24);
//etc...

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • KIT KAT

    KIT KAT

    3 EKİM 2005
  • Krumme1996

    Krumme1996

    21 EYLÜL 2009
  • Matt Harding

    Matt Harding

    23 Mayıs 2006