首頁 >Java >java教程 >如何在 Java 中將毫秒轉換為人類可讀的時間格式?

如何在 Java 中將毫秒轉換為人類可讀的時間格式?

Barbara Streisand
Barbara Streisand原創
2024-12-20 12:28:16683瀏覽

How Can I Convert Milliseconds to a Human-Readable Time Format in Java?

在 Java 中將毫秒轉換為人類可讀的時間

準確測量經過的時間在許多程式設計場景中至關重要。 System.currentTimeMillis() 方法提供與當前時間相對應的基於毫秒的時間戳。然而,以人類可以輕鬆理解的格式呈現此時間戳需要轉換。本文探討了將毫秒轉換為人類可讀格式(如「XX 分鐘,XX 秒」)的最佳方法。

Java 的 TimeUnit 類別

java.util.並發.TimeUnit類別提供了一種將毫秒轉換為人類可讀時間單位的便捷方法。它提供了靜態方法,例如 toMinutes 和 toSeconds 來執行必要的計算。要使用此方法,您可以編寫以下程式碼:

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

為單位數字值新增前導零

如果您想要確保單位數字值顯示前導零(例如,「09 分鐘」而不是「9分鐘」),只需使用以下命令code:

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

沒有 TimeUnit 的自訂計算

如果 TimeUnit 不可用(例如,在較舊的 Android版本上),您可以執行毫秒到時間的轉換手動使用以下方程式:

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

然後您可以組合這些值來創建所需的時間

結論

透過利用java.util.concurrent.TimeUnit 類別或自訂計算,您可以輕鬆地將毫秒轉換為Java中人類可讀的格式。這使您能夠以準確且易於理解的方式顯示經過的時間。

以上是如何在 Java 中將毫秒轉換為人類可讀的時間格式?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn