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

  • adrianisen

    adrianisen

    25 Kasım 2009
  • LIVESTRONG.COM

    LIVESTRONG.C

    5 EKİM 2005
  • Metheud

    Metheud

    9 EYLÜL 2006