fork download
  1. import java.time.Duration;
  2. import java.time.LocalDate;
  3. import java.time.LocalDateTime;
  4. import java.time.LocalTime;
  5. import java.time.ZoneId;
  6.  
  7. public class Main {
  8. public static void main(String[] args) {
  9. Duration result = calculateTimeDifference("-2", "2023-07-16");
  10. System.out.println("Time Difference Calculated : " + result);
  11. // You can get time units separately as well
  12. System.out.printf("%d hours, %d minutes%n", result.toHoursPart(), result.toMinutesPart());
  13. }
  14.  
  15. static Duration calculateTimeDifference(String hotelOffset, String CheckInDt) {
  16. LocalDateTime nowInNY = LocalDateTime.now(ZoneId.of("America/New_York"));
  17.  
  18. // Convert hotel's timezone offset string to minutes
  19. int offsetValue = Integer.parseInt(hotelOffset);
  20. int offsetInMinutes = offsetValue * 30;
  21.  
  22. LocalDateTime nowAtHotel = nowInNY.plusMinutes(offsetInMinutes);
  23.  
  24. LocalDateTime checkInDateTime = LocalDate.parse(CheckInDt)
  25. .atTime(LocalTime.of(15, 0));
  26.  
  27. return Duration.between(nowAtHotel, checkInDateTime);
  28. }
  29. }
Success #stdin #stdout 0.19s 48696KB
stdin
Standard input is empty
stdout
Time Difference Calculated : PT46M44.293121S
0 hours, 46 minutes