我开发安卓应用。我的问题是我得到字符串开始时间和结束时间。我想开始时间大于当前时间,当前时间小于结束时间。如何在 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/