【问题标题】:how to check if system date is between two times in android?如何检查系统日期是否在android中的两次之间?
【发布时间】:2015-05-30 17:35:00
【问题描述】:

我有一个开始日期 = "13:45"

还有一个结束日期 = "14:35"

现在我想检查系统时间是否在这两个时间之间,例如“14:00”

我尝试过 Date 类中的 beforeafter 方法,但效果不佳

有什么建议吗?

【问题讨论】:

标签: android date


【解决方案1】:
    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);

【讨论】:

    【解决方案2】:

    也许你可以这样做:

        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
        }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-09-19
      • 2015-01-23
      • 2017-07-07
      • 1970-01-01
      • 1970-01-01
      • 2013-11-08
      相关资源
      最近更新 更多