-2

I have a start date = "13:45"

and an end date = "14:35"

Now i would like to check if the system time is between these two times, for example "14:00"

I have tried the methods before and after from the Date class but it did not worked properly

Any Suggestions ?

seriously
  • 345
  • 1
  • 3
  • 12

2 Answers2

5
    SimpleDateFormat format = new SimpleDateFormat("HHmm",
            Locale.getDefault());
    String now = format.format(new Date());
    String start = "13:45".replace(":", "");
    String end = "14:35".replace(":", "");
    boolean isBetween = Integer.valueOf(now) > Integer.valueOf(start)
            && Integer.valueOf(now) < Integer.valueOf(end);
    System.out.println(isBetween);
oldfeel
  • 420
  • 3
  • 12
0

Maybe you could do something like this:

    Calendar start = Calendar.getInstance();
    start.set(Calendar.HOUR_OF_DAY, 13);
    start.set(Calendar.MINUTE, 45);
    Calendar current = Calendar.getInstance();
    Calendar end = Calendar.getInstance();
    end.set(Calendar.HOUR_OF_DAY, 14);
    end.set(Calendar.MINUTE, 35);

    if(current.after(start) && current.before(end)){
        //we are between
    }
LaurentY
  • 7,495
  • 3
  • 37
  • 55