fork download
  1. import java.time.Duration;
  2. import java.time.LocalDateTime;
  3. import java.time.Month;
  4.  
  5. public class Main {
  6. public static void main(String[] args) {
  7. LocalDateTime startDateTime = LocalDateTime.of(2020, Month.NOVEMBER, 10, 15, 20, 25);
  8. LocalDateTime endDateTime = LocalDateTime.of(2020, Month.DECEMBER, 10, 18, 24, 30);
  9.  
  10. Duration duration = Duration.between(startDateTime, endDateTime);
  11. // Default format
  12. System.out.println(duration);
  13.  
  14. // Custom format
  15. // ####################################Java-8####################################
  16. String formattedElapsedTime = String.format("%d:%02d:%02d", duration.toHours(),
  17. duration.toMinutes() % 60, duration.toSeconds() % 60);
  18. System.out.println(formattedElapsedTime);
  19. // ##############################################################################
  20.  
  21. // ####################################Java-9####################################
  22. formattedElapsedTime = String.format("%d:%02d:%02d", duration.toHours(), duration.toMinutesPart(),
  23. duration.toSecondsPart());
  24. System.out.println(formattedElapsedTime);
  25. // ##############################################################################
  26. }
  27. }
Success #stdin #stdout 0.14s 54700KB
stdin
Standard input is empty
stdout
PT723H4M5S
723:04:05
723:04:05