android - 如何在android中查看开始时间和结束时间?

标签 android date time

我开发安卓应用。我的问题是我得到字符串开始时间和结束时间。我想开始时间大于当前时间,当前时间小于结束时间。如何在 android 中实现我下面的代码。请帮我!!!

 String sTartTime ="8:0" ;
    String eNdTime = "20:20";
    Calendar c = Calendar.getInstance();
    SimpleDateFormat formatShort = new SimpleDateFormat("H:m", Locale.US);
    String formattedtime = formatShort.format(c.getTime());

 try {

                    String string1 = eNdTime;
                    Date time1 =  new SimpleDateFormat("HH:mm:ss").parse(string1);
                    Calendar calendar1 = Calendar.getInstance();
                    calendar1.setTime(time1);

                    String string2 = sTartTime;
                    Date time2 = new SimpleDateFormat("HH:mm:ss").parse(string2);
                    Calendar calendar2 = Calendar.getInstance();
                    calendar2.setTime(time2);
                    calendar2.add(Calendar.DATE, 1);

                    String someRandomTime = formattedtime;
                    Date d =  new SimpleDateFormat("HH:mm:ss").parse(someRandomTime);
                    Calendar calendar3 = Calendar.getInstance();
                    calendar3.setTime(d);
                    calendar3.add(Calendar.DATE, 1);

                    Date x = (Date) calendar3.getTime();
                    if (x.after(calendar1.getTime()) && x.before(calendar2.getTime())) {
                        //checkes whether the current time is between 14:49:00 and 20:11:13.
                         Log.v("log_tag", "Time check today True " );
                    }else{
                        Log.v("log_tag", "Time check today false " );
                    }
                } catch (ParseException e) {
                    e.printStackTrace();
                }

但我无法获取日期对象。我收到错误类型不匹配:无法从 java.util.Date 转换为 java.sql.Date

谢谢!!!

最佳答案

删除 java.sql.Date 的导入。我已经测试了你的代码,它正在做一些小的调整。

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

class HelloWorldApp {

public static void main(String[] args) {
    System.out.println("Hello World!"); // Display the string.
    String sTartTime ="8:0:0" ;
    String eNdTime = "16:20:00";
    String nowTime = "12:20:00";

    try {

        String string1 = eNdTime;
        Date endDate =  new SimpleDateFormat("HH:mm:ss").parse(string1);

        String string2 = sTartTime;
        Date beforeDate = new SimpleDateFormat("HH:mm:ss").parse(string2);

        String someRandomTime = nowTime;
        Date inBeforeDate =  new SimpleDateFormat("HH:mm:ss").parse(someRandomTime);

        if (inBeforeDate.after(beforeDate) && inBeforeDate.before(endDate)) {
            //checkes whether the current time is between 14:49:00 and 20:11:13.
            System.out.println("log_tag" + "Time check today True " );
        }else{
            System.out.println("log_tag" + "Time check today false " );
        }
    } catch (ParseException e) {
        e.printStackTrace();
    }
}
}

关于android - 如何在android中查看开始时间和结束时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24548221/

相关文章:

javascript - 如何在字符串中围绕 ‘PM’ 和 ‘AM’ 换行?

java - 带有适配器 ""的 ViewPager 需要 AsyncTask 中的 View id

php - 在自由格式文本中查找日期的最佳方法是什么?

postgresql - Postgresql 日期转换

algorithm - 线段树的最坏情况运行时间

php - 调度方法

Android 在谷歌分析中创建自定义维度

android - 延迟除了第一次 Rxjava Android

android - 如何避免使用painterResource()为图标着色。它将我的矢量绘制为黑色

javascript - 我的 javascript 函数出现函数未定义错误