//早于截止时间
public static boolean isDateBefore(String endTime){
try{
Date date1 = new Date();
DateFormat df = DateFormat.getDateTimeInstance();
return date1.before(df.parse(endTime));
}catch(ParseException e){
System.out.print(e.getMessage());
return false;
}
}
//晚于起始时间
public static boolean isDateAfter(String startTime){
try{
Date date1 = new Date();
DateFormat df = DateFormat.getDateTimeInstance();
return date1.after(df.parse(startTime));
}catch(ParseException e){
System.out.print(e.getMessage());
return false;
}
}
public static void main(String[] args) {
String date = "";
SimpleDateFormat sdf= new SimpleDateFormat("yyyy-MM-dd");
java.util.Date dd = Calendar.getInstance().getTime();
date = sdf.format(dd);
boolean flag = isDateBefore(date+" 09:01:00");
boolean flag2 = isDateBefore(date+" 17:29:00");
boolean flag3 = isDateAfter(date+" 09:01:00");
boolean flag4 = isDateAfter(date+" 17:29:00");
System.out.println(flag+","+flag2);
System.out.println(flag3+","+flag4);
}
/**
* 得到两日期相差几个月
*
* @param String
* @return
*/
public static long getMonth(String startDate, String endDate) {
SimpleDateFormat f = new SimpleDateFormat("yyyy-MM-dd");
long monthday;
try {
Date startDate1 = f.parse(startDate);
//开始时间与今天相比较
Date endDate1 = new Date();
Calendar starCal = Calendar.getInstance();
starCal.setTime(startDate1);
int sYear = starCal.get(Calendar.YEAR);
int sMonth = starCal.get(Calendar.MONTH);
int sDay = starCal.get(Calendar.DATE);
Calendar endCal = Calendar.getInstance();
endCal.setTime(endDate1);
int eYear = endCal.get(Calendar.YEAR);
int eMonth = endCal.get(Calendar.MONTH);
int eDay = endCal.get(Calendar.DATE);
monthday = ((eYear - sYear) * 12 + (eMonth - sMonth));
if (sDay < eDay) {
monthday = monthday + 1;
}
return monthday;
} catch (ParseException e) {
logger.debug("获取相差月数失败");
monthday = 0;
}
return monthday;
}
/**
* 两个年月相减,获得相差月数
* @param String 第一个日期(yyyyMM)
* @param String 第二个日期(yyyyMM)
* @return int 相差月数
* @throws java.text.ParseException
*/
public static int getMonthNum(String date1,String date2) throws java.text.ParseException{
if("".equals(ConvertUtil.convertNull(date1))||"".equals(ConvertUtil.convertNull(date2))){
return 0;
}
Date d = null;
Date d1 = null;
SimpleDateFormat df = new SimpleDateFormat("yyyyMM");
d = df.parse(date1);
d1 = df.parse(date2);
// 比较日期大小
if (d.getTime() > d1.getTime()) {
System.out.println(df.format(d));
} else {
System.out.println(df.format(d1));
}
Calendar c = Calendar.getInstance();
c.setTime(d);
int year = c.get(Calendar.YEAR);
int month = c.get(Calendar.MONTH);
c.setTime(d1);
int year1 = c.get(Calendar.YEAR);
int month1 = c.get(Calendar.MONTH);
int result;
if (year == year1) {
result = month1 - month + 1;// 两个日期相差几个月,即月份差
} else {
result = 12 * (year1 - year) + month1 - month + 1;// 两个日期相差几个月,即月份差
}
return result;
}
分享到:
相关推荐
Java时间大小的比较 date java
JAVA 时间 操作 时间JAVA 时间 操作 时间JAVA 时间 操作 时间JAVA 时间 操作 时间JAVA 时间 操作 时间JAVA 时间 操作 时间JAVA 时间 操作 时间JAVA 时间 操作 时间
使用js和java的两种方法返回三个月前的具体时间,显示的格式有年月日和年月两种格式。
Java实现时间监听Java实现时间监听Java实现时间监听Java实现时间监听Java实现时间监听Java实现时间监听
java比较时间大小。挺不错的。用于时间的比较。其他的自己延伸
JAVA读取视频时间
java 获取标准北京时间 标准北京时间 北京时间 网络时间 internet时间
* 日期:2009年3月8日 * 功能:比较两个日期的大小 */ public class CompareDate { /** * 比较两个日期大小的方法 * @param date1 * @param date2 * @return */ public static int compareTo(String ...
java获取今天、昨天、近一周、近两周、近三周、近一月、近两月、近三月、近半年、本周、上周、本月、上月时间段
Calendar c = new GregorianCalendar(); c.setFirstDayOfWeek(Calendar.MONDAY); c.setTime(new Date()); c.set(Calendar.DAY_OF_WEEK, c.getFirstDayOfWeek()); // Monday System.out.println(c....//本月第一天
java中,计算一个月总共有几天工作日,和都有哪天是工作日等问题。
java8 localtime 毫秒与时间互转 获取前一天六点钟时间
java获取时间java获取时间java获取时间java获取时间java获取时间java获取时间java获取时间java获取时间
JAVA时间工具类(计算法定工作日工时):计算某个日期加上几个工作日后的一个工作日期(除周末和法定节假日),计算某个日期后一天的工作日期(除周末和法定节假日),计算两个日期的真实工作日(除周末和法定节假日),...
网上很多资源都没有输出结果是(相差几年几个月几天的代码)希望对大家有帮助 有不足地方 望大家多多指点
java时间大全.txt java时间大全.txt java时间大全.txt java时间大全.txt
java获取时间的大全,以及在实际的开发中怎么去操作时间,怎么样去设置时间的格式。
经常在网上搜东西都搜不到,更有人上传点没用了,现在我解决了就把解决方法上传上吧.
java中Date类型常见的用法,包括时间类型的format,两个时间的比较,时间类型的计算等。
Java时间格式转换大全