SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Date start = sdf.parse("1984-01-01 00:00:00"); Date end = sdf.parse("1985-01-04 00:00:00"); Date date = sdf.parse("1985-01-01 09:12:01"); boolean isInRange = date.after(start) && date.before(end); System.out.println(isInRange); } }
public static boolean IsStartAndEndTime(String startdate, String enddate, String date)throws Exception{
SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd"); Date dt1 = sf.parse(startdate); Date dt2 = sf.parse(enddate); Date dt3 = sf.parse(date); if(dt3.before(dt1) ||dt3.after(dt2)){ return false; }
return true; } public static void main(String[] args) throws Exception{ //日期比较 boolean b = false; b = IsStartAndEndTime("1984-01-01","1985-01-04","1985-01-01 09:12:01"); if(b){ System.out.println("在这2个日期之间 "); }else{ System.out.println("不在 "); } } }
java.util.Date date=new java.util.Date();这样date对象默认就是系统当前时间的值来填充的至于比较,你可以将date对象包装成为java.util.Calendar类的对象,而Calendar类实现了java.lang.Comparable接口,可以比较两个Calendar的大小。具体的你可以参考java的api文档的相关类的说明
然后调用if(!(date.after(1985-01-04||date.before(1984-01-01))){
System.out.println("在两个时间之间!"); }
Date类和Calendar类里面很多方法
package test;import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;public class panel { public static void main(String[] args) throws ParseException {
SimpleDateFormat sm = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println(sm.format(new Date(System.currentTimeMillis()))); Date date = sm.parse("1985-01-01 09:12:01");
Date currentDate = new Date(System.currentTimeMillis());
if(date.compareTo(currentDate)==-1) {
System.out.println("date < currentDate");
}else if(date.compareTo(currentDate)==0) {
System.out.println("date = currentDate");
}else if(date.compareTo(currentDate)==1) {
System.out.println("date > currentDate");
}
}
}
import java.util.*;
public final class Constants ...{ // Session keys
public static final String getDate()...{
Calendar cal = Calendar.getInstance();
java.text.SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String cdate = sdf.format(cal.getTime());
System.out.println("times is :"+cdate);
return cdate;
}
}上面的代码用到了Java中的Calendar类,这是个时间类,后面用到了时间格式化的类。
“yyyy-MM-dd HH:mm:ss”代表要想得到的时间字符串的类型。String cdate = sdf.format(cal.getTime()); 通过格式化类的format方法格式化时间,得到想要的字符串。
String date = f.format(new Date());
这个时间就是你要的格式,如:1985-01-01 09:12:01
然后String[] date1 = date.split(" ");
日期=date[0];
时间=date[1];
然后用compareTo直接比较1984-01-01和1985-01-04就行了
System.out.println(sm.format(new Date(System.currentTimeMillis())));
import java.text.SimpleDateFormat;
import java.util.Date;public class Main2 { public static void main(String[] args) throws ParseException {
String str = String.format("%tF %<tT", System.currentTimeMillis());
System.out.println(str);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date start = sdf.parse("1984-01-01 00:00:00");
Date end = sdf.parse("1985-01-04 00:00:00");
Date date = sdf.parse("1985-01-01 09:12:01");
boolean isInRange = date.after(start) && date.before(end);
System.out.println(isInRange);
}
}
package com.sytdc.cxl;import java.rmi.activation.ActivationException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.zip.DataFormatException;public class datetest { /**
* @param args
*/
public static boolean IsStartAndEndTime(String startdate,
String enddate,
String date)throws Exception{
SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd");
Date dt1 = sf.parse(startdate);
Date dt2 = sf.parse(enddate);
Date dt3 = sf.parse(date);
if(dt3.before(dt1) ||dt3.after(dt2)){
return false;
}
return true;
} public static void main(String[] args) throws Exception{
//日期比较
boolean b = false;
b = IsStartAndEndTime("1984-01-01","1985-01-04","1985-01-01 09:12:01");
if(b){
System.out.println("在这2个日期之间 ");
}else{
System.out.println("不在 ");
}
}
}