IT虾米网

java日期的加减详解

sanshao 2018年06月24日 编程语言 1258 0
private static final String DATE_NUMBER_PATTERN = "yyyyMMdd"; 
 
定义日期返回的类型 
 
/** 
* 由yyyyMMdd格式的字符串返回日期 
*  
* @param date 
* @return 
*/ 
public static Date numberToDate(String string) { 
if (string == null) 
return null; 
SimpleDateFormat simpleDateFormat = new SimpleDateFormat( 
DateUtilsC.DATE_NUMBER_PATTERN); 
 
 
try { 
return simpleDateFormat.parse(string); 
} catch (ParseException e) { 
// TODO Auto-generated catch block 
e.printStackTrace(); 
} 
 
 
return null; 
 
} 
 
对传过来的日期操作!!! 
 
       Date dealDate = DateUtilsC.numberToDate(dealDateStr); 
Date endDate = DateUtilsC.numberToDate(endDateStr); 
// 获取日历控件 
Calendar cal = Calendar.getInstance(); 
// 加1天后的开始日期 
cal.clear(); 
cal.setTime(dealDate); 
cal.add(Calendar.DAY_OF_YEAR, 1); 
Date dealDateD1 = cal.getTime(); 
// 开始日期与结束日期相差1天内 
if(!dealDateD1.before(endDate)){ 
return  "01"; 
} 
// 加7天后的开始日期 
cal.clear(); 
cal.setTime(dealDate); 
cal.add(Calendar.DAY_OF_YEAR, 7); 
Date dealDateD7 = cal.getTime(); 
// 开始日期与结束日期相差7天内 
if(!dealDateD7.before(endDate)){ 
return  "02"; 
} 
// 加14天后的开始日期 
cal.clear(); 
cal.setTime(dealDate); 
cal.add(Calendar.DAY_OF_YEAR, 14); 
Date dealDateD14 = cal.getTime(); 
// 开始日期与结束日期相差14天内 
if(!dealDateD14.before(endDate)){ 
return  "03"; 
} 
// 加21天后的开始日期 
cal.clear(); 
cal.setTime(dealDate); 
cal.add(Calendar.DAY_OF_YEAR, 21); 
Date dealDateD21 = cal.getTime(); 
// 开始日期与结束日期相差21天内 
if(!dealDateD21.before(endDate)){ 
return  "04"; 
} 
// 加1个月后的开始日期 
cal.clear(); 
cal.setTime(dealDate); 
cal.add(Calendar.MONTH, 1); 
Date dealDateM1 = cal.getTime(); 
// 开始日期与结束日期相差1月内 
if(!dealDateM1.before(endDate)){ 
return  "05"; 
} 
// 加3个月后的开始日期 
cal.clear(); 
cal.setTime(dealDate); 
cal.add(Calendar.MONTH, 3); 
Date dealDateM3 = cal.getTime(); 
// 开始日期与结束日期相差3月内 
if(!dealDateM3.before(endDate)){ 
return  "06"; 
} 
// 加6个月后的开始日期 
cal.clear(); 
cal.setTime(dealDate); 
cal.add(Calendar.MONTH, 6); 
Date dealDateM6 = cal.getTime(); 
// 开始日期与结束日期相差6月内 
if(!dealDateM6.before(endDate)){ 
return  "07"; 
} 
// 加9个月后的开始日期 
cal.clear(); 
cal.setTime(dealDate); 
cal.add(Calendar.MONTH, 9); 
Date dealDateM9 = cal.getTime(); 
// 开始日期与结束日期相差1月内 
if(!dealDateM9.before(endDate)){ 
return  "08"; 
} 
// 加一年后的开始日期 
cal.clear(); 
cal.setTime(dealDate); 
cal.add(Calendar.YEAR, 1); 
Date dealDateY1 = cal.getTime(); 
// 开始日期与结束日期相差1月内 
if(!dealDateY1.before(endDate)){ 
return  "09"; 
} 
return null; 
} 

发布评论

分享到:

IT虾米网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!

判断是否汉字的Java代码详解
你是第一个吃螃蟹的人
发表评论

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。