How to convert milliseconds to days, hours, minutes, seconds and milliseconds in Java

1 Answer

0 votes
import java.util.concurrent.TimeUnit;

public class MyClass {
    public static void main(String args[]) {
        final long milliseconds = 42173610589L;
        
		final long days = TimeUnit.MILLISECONDS.toDays(milliseconds);
		
		final long hours = TimeUnit.MILLISECONDS.toHours(milliseconds) - TimeUnit.DAYS.toHours(TimeUnit.MILLISECONDS.toDays(milliseconds));
				
		final long minutes = TimeUnit.MILLISECONDS.toMinutes(milliseconds) - TimeUnit.HOURS.toMinutes(TimeUnit.MILLISECONDS.toHours(milliseconds));
		
		final long seconds = TimeUnit.MILLISECONDS.toSeconds(milliseconds) - TimeUnit.MINUTES.toSeconds(TimeUnit.MILLISECONDS.toMinutes(milliseconds));
		
		final long ms = TimeUnit.MILLISECONDS.toMillis(milliseconds) - TimeUnit.SECONDS.toMillis(TimeUnit.MILLISECONDS.toSeconds(milliseconds));
		
		System.out.println(String.format("%d Days %d Hours %d Minutes %d Seconds and %d Milliseconds", days, hours, minutes, seconds, ms));
    }
}




/*
run:
 
488 Days 2 Hours 53 Minutes 30 Seconds and 589 Milliseconds
 
*/

 

 



answered May 19, 2023 by avibootz
...